Android:
client_id: 2274003
client_secret: hHbZxrka2uZ6jB1inYsH
IPhone:
client_id: 3140623
client_secret: VeWdmVclDCtn6ihuP1nt
IPad:
client_id: 3682744
client_secret: mY6CDUswIVdJLCD3j15n
Windows desktop:
client_id: 3697615
client_secret: AlVXZFMUqyrnABp8ncuU
Windows phone:
client_id: 3502557
client_secret: PEObAuQi6KloPM4T30DV
connect.send("VKWebAppGetAuthToken", {"app_id": 6396978, "scope": "friends,status"});
Если пользователь разрешит доступ для приложения, генерируется событие VKWebAppAccessTokenReceived с единственным полем access_token (string), которое содержит ключ доступа пользователя.
JSON.parse()
, в PHP разбирается функцией json_decode()const winNumber = 5;
let tryNumber;
for (let i = 0; i < 3 && winNumber !== tryNumber; i++) {
tryNumber = +prompt('Enter a number ');
}
tryNumber
был объявлен внутри тела цикла, и поэтому был недоступен снаружи, в условии for()
. Надо было его объявить снаружи.i < 3
и введённое число пока ешё не равно winNumber
.const maxprod = arr => {
const a = arr.slice().sort((a, b) => b - a);
const max = a[0];
const len = a.length;
let iter = 0;
for (let i = 1; i < len - 2; i++) {
iter++;
const A2 = a[i];
const x2 = max / A2;
if (!Number.isInteger(x2)) continue;
for (let j = i + 1; j < len - 1; j++) {
iter++;
const A3 = a[j];
const x3 = x2 / A3;
if (!Number.isInteger(x3)) continue;
if (!!~a.indexOf(x3)) {
return [max, A2, A3, x3, iter]);
}
}
}
return false;
}
indexOf()
всё равно перебирает массив.[
[20,5,3,2,2], // [ 20, 5, 2, 2, 3 ]
[7,9,4,60,5,3,2,2], // [ 60, 5, 4, 3, 4 ]
[1,2,3,199], // false
[2430,2431,2431,2431,1,1,1,2,3,5,7,9,11,13,15,17,19,23], // [ 2431, 17, 13, 11, 8 ]
].forEach(test => console.log(test, maxprod(test)));
module: {
rules: [
{
test: require.resolve('qwerty.js'),
use: 'exports-loader?qwerty'
}
import { qwerty } from './qwerty.js';
$str = "111222772019"; // строка из БД
list($unit, $employee, $serial, $year) = sscanf($str, "%3d%3d%2d%4d");
// 3 цифры, 3 цифры, 2 цифры, 4 цифры
printf("Unit: %d, man: %d, id: %d, year: %d<br/>", $unit, $employee, $serial, $year);
// Unit: 111, man: 222, id: 77, year: 2019
users.get()
и messages.send()
– это съедает время и память. Будье готовы переключиться на схему с очередью и отдельными рабочими. Приняли запрос, сохранили, отдали "ok". Другой процесс, рабочий, неспеша разбирает задачи из очереди, отправляет ответы. Стали популярнее, добавили рабочих с других серверов.