.button {
color: white;
background: transparent;
transition: all 0.4s;
}
.button:hover {
color: black;
background: white;
}
const containerSelector = '.section .block';
const itemSelector = '.imgs img';const $containers = $(containerSelector);
$(itemSelector).each((i, n) => $containers.eq(i).append(n));
// или
const items = document.querySelectorAll(itemSelector);
document.querySelectorAll(containerSelector).forEach((n, i) => n.append(items[i]));
return this.data();
const chunked = (data, chunkSize) =>
Array.prototype.reduce.call(
data,
(acc, n, i) => (
i = i / chunkSize | 0,
(acc[i] = acc[i] || []).push(n),
acc
),
[]
);console.log(chunked([...Array(10).keys()], 3));
console.log(chunked('ABCDEFG', 2));
console.log(chunked(document.querySelectorAll('img'), 5));
<yandex-map
ref="map"
...<button
@click="$refs.map.myMap.balloon.open(координаты, содержимое)"
...
undefined. Получаете udnefinedпотому что дергаете несуществующий элемент массива. Потому что цикл делает итераций больше, чем в массиве элементов. Потому что вместо длины массива слов сравниваете значение счётчика цикла с длиной строки, из которой слова нарезали.for (let i = 0; i < answer.length - 1; i++)for (let i = 0; i < words.length; i++).split(' '), то в результирующий массив попадут пустые строки, и зачем они там нужны, не очень понятно.
p.style.color = colors[i].
yScale.domain(d3.extent(data, (d) => d.amount)) - так вы повторно задаёте интервал значений, беря в качестве границ минимум (был 0, остался 0) и максимум (вместо ранее установленных 100000 стало 50000, поэтому и "линия достигает самого верха графика") своих данных.
Начал изучать VueJS. Читал документацию очень много и долго.
new Vue.component
function throttle(f, delay) {
let lastCall = -Infinity;
return function() {
const now = +new Date;
if (now - lastCall > delay) {
lastCall = now;
return f.apply(this, arguments);
}
};
}
date_create(2019-05-16)
$keys = array_keys($arr);
$head = "<tr><th>year</th>".implode("", array_map(function($n) {
return "<th>$n</th>";
}, $keys))."</tr>";
$rows = implode("", array_map(function($key) use($arr) {
return "<tr><td>$key</td>".implode("", array_map(function($n) use($key) {
return "<td>$n[$key]</td>";
}, $arr))."</tr>";
}, array_keys($arr[$keys[0]])));
echo "<table>$head$rows</table>";
Object.entries(props).filter(n => n[1]).map(n => n[0]).join(',')
// или
`${Object.entries(props).reduce((acc, [ k, v ]) => (v && acc.push(k), acc), [])}`
// или
Object.entries(props).map(n => n[1] && n[0]).filter(Boolean).toString()
// или
'' + Object.keys(props).reduce((acc, n) => props[n] ? [ ...acc, n ] : acc, [])
// или
String(Object.keys(props).filter(n => props[n]))
let arrays: [[String]] = [array1, array2]
var combinations: [[String]] = []
let arraysLen: Int = arrays.count
let arrLen: Int = arrays[0].count
let numCombinations: Int = Int(pow(Double(arraysLen), Double(arrLen)))
for i in (0 ..< numCombinations) {
var combination: [String] = []
for j in (0 ..< arrLen) {
let arrIndex: Int = i / Int(pow(Double(arraysLen), Double(j))) % arraysLen
let elIndex: Int = arrLen - j - 1
combination.insert(arrays[arrIndex][elIndex], at: 0)
}
combinations.append(combination)
}
const key = 'background-color';
const values = [ 'red', 'lime', 'yellow', 'aqua', 'brown', 'magenta' ];
const getValue = i => values[i % values.length];
const selector = '.item';$(selector).css(key, getValue);
// или
document.querySelectorAll(selector).forEach((n, i) => {
n.style[key] = getValue(i);
// или
n.style.setProperty(key, getValue(i));
// или
n.style.cssText += `${key}: ${getValue(i)}`;
// или
n.setAttribute('style', key + ': ' + getValue(i));
});