N
исходного массива и возвести её в степень себя: NN.3*3*3 = 27
const shred = arr => arr.reduce((p,c,i,a) => {
const f = prefix => {
for (let j=0; j<a.length; j++)
if (prefix.length < a.length - 1) {
f(prefix + a[j]);
} else {
p.push(+(prefix + a[j]));
}
}
f(c.toString());
return p;
}, []);
shred([1,2,3]);
/*
[111,112,113,121,122,123,131,132,133,211,212,213,221,222,223,231,232,233,311,312,313,321,322,323,331,332,333]
*/
npm install uglify-js
uglifyjs --compress -o result.js -- jquery.js lib2.js lib3.js
result.js
, который содержит в себе все указанные выше билиотеки. Его одного и подключайте в страницу. function countLocalMax(arr) {
const last = arr.length;
let prevGrad = 1;
return arr.reduce((p,c,i,a)=>{
const nextGrad = i === last ? -1 : a[i+1] - c;
if (prevGrad >= 0 && nextGrad <= 0) p++;
prevGrad = nextGrad;
return p;
}, 0);
}
countLocalMax([0,0,3,4,5,4,0,-1]); // 2
Как добавить элемент в конец ?
var runRo1 = document.getElementsByClassName('btn send-private-message-btn white');
if(runRo1.length == 1){
runRo1[0].innerHTML += '<div class="buy-deposit btn white" only-other-profile="">Забронировать на бирже</div>';
}
innerHTML
что-то порушит - перестанет там где-то реагировать на клики, то надо делать «правильно»: создавать элемент и вставлять в конец через appendChild()
:if(..) {
const div = document.createElement('div');
div.classList.add('buy-deposit', 'btn', 'white');
div.setAttribute('only-other-profile', '');
div.appendChild( document.createTextNode('Забронировать на бирже'));
runRo1[0].appendChild(div);
}
fetch()
указывать прокси, через который выполнять подключение.fetch('https://www.google.com',{ agent:new HttpsProxyAgent('http://127.0.0.1:8580')})
.then(function(res){
//...
})
n.toString(9)
– используются цифры от 0 до 8 и точно нет ни одной девятки. Единицы меняем на девятки. Остаётся добавить две единицы на случайных позициях.function tworandom() {
const arr = Math.floor(Math.random() * 9e8).toString(9).replace(/1/g,9).split('');
for (let i = 2; i > 0; i--) arr.splice(Math.floor(Math.random() * arr.length), 0, 1);
return +arr.join('');
}
[...Array(5)].map(tworandom)
// 6401715726, 950818173966, 915469690179, 4191464422, 223063891715
(()=>{
function merge(nums1, m, nums2, n) {
nums1 = nums1.slice(0, m).concat(nums2).sort((a, b) => a - b);
}
var nums1 = [46,55,88,0,0,0,0];
merge( nums1, 3, [18,29,80,90], 4);
return JSON.stringify(nums1);
})()
/*
[46,55,88,0,0,0,0] // исходный массив не изменился
*/
oReq.addEventListener("load", reqListener);
reqListener()
XMLHttpRequest
и не виден невооруженным глазом.send()
сразу же явно дергал функцию, которую мы передали как слушателя события. Но это был бы уже не тот XMLHttpRequest
, каким мы его любим. function verify(text) {
const buffer = [];
const valid = '()[]{}';
for (let i = 0, len = text.length; i < len; i++) {
const c = text[i];
const idx = valid.indexOf(c);
if (-1 === idx) continue; // не скобка
if (idx & 1) { // закрывающая (нечет)
if (0 === buffer.length) return false;
if (valid.indexOf(buffer.pop()) + 1 !== idx) return false;
} else { // открывающая
buffer.push(c);
}
}
return buffer.length === 0;
}
(()=>{
const tests = [
["a(b)", true ],
["[{}]", true ],
["[(]", false ],
["}{", false ],
["z([{}-()]{a})", true],
["", true ],
["(((}", false ],
];
return JSON.stringify(
tests.map(t => (verify(t[0]) === t[1] ? 'OK' : 'FAIL' ) + ': ' + t[0])
, null,
2
);
})()
/*
[
"OK: a(b)",
"OK: [{}]",
"OK: [(]",
"OK: }{",
"OK: z([{}-()]{a})",
"OK: ",
"OK: (((}"
]
*/
appendChild()
, упомянутый в ошибке.innerText
это не метод, а свойство..then(function(result) {
const el = document.querySelector('.response');
let html = ''; // здесь соберём html всех блоков из цикла
for(let i = 0, len = result.data.length; i < len; i++){
const data = result.data[i];
html += ` ... <img src="${data.logo}"> ... `;
}
el.innerHTML = html;
})