execute()
— он позволяет выполнить несложный код, на похожем на JS языке, на стороне сервера ВК:const code = `
var offset = 0;
var step = 5000;
var result = API.friends.get({"offset":offset, "count":step});
var friends = result.items;
var total = result.count;
while(friends.length < total) {
offset = offset + step;
friends = friends + API.friends.get({
"offset": offset,
"count": step,
}).items;
}
return friends;
`;
new Promise((res, rej) => {
$.ajax({
url: 'https://api.vk.com/method/execute',
method: 'POST',
data: {
code: code,
v: '5.103',
access_token: 'SECRET',
},
success: data => res(data),
error: err => rej(err),
});
}).then(data => {
console.log('Все друзья:', data);
})
.catch(err => console.error(err));
var url = '/partners/ajax.php';
var obfuscated = url.split('')
.map(c => '\\x' + c.charCodeAt(0).toString(16).toUpperCase())
.join('');
// "\\x2F\\x70\\x61\\x72\\x74\\x6E\\x65\\x72\\x73\\x2F\\x61\\x6A\\x61\\x78\\x2E\\x70\\x68\\x70"
alert(obfuscated); // \x2F\x70\x61\x72\x74\x6E\x65\x72\x73\x2F\x61\x6A\x61\x78\x2E\x70\x68\x70
Alt + D
создаёт связанную копию. Поменяли исходный объект — поменялась и привязанная копия.Shift + D
создаёт независимую копию.if (0 === count(array_filter($arr, function($el) use ($unique) {return $el['key'] == $unique;}))) {
// йее, уникальное!
} else {
// нашлись с таким значением
}
uniqid('', TRUE)
DISTINCT `key`
— они не совпадут, если были повторы.setTimeout()
, a именно requestAnimationFrame()
requestAnimationFrame()
успел сработать дважды во время одного кадра и перерисовки не требуется.npm install ml-matrix
документацияimport { Matrix } from 'ml-matrix';
const matrix = new Matrix(12, 31);
template
,