function findSequence(arr) {
let maxSequence = [];
let currentSequence = [];
for (let i = 1; i < arr.length - 1; i++) {
const currentValue = parseInt(arr[i].value, 10);
const prevValue = parseInt(arr[i - 1].value, 10);
const nextValue = parseInt(arr[i + 1].value, 10);
if (prevValue > currentValue && currentValue < nextValue) {
currentSequence = [arr[i]];
} else if (currentSequence.length > 0 && currentValue < nextValue) {
currentSequence.push(arr[i]);
} else {
currentSequence = [];
}
if (currentSequence.length > maxSequence.length) {
maxSequence = currentSequence.slice();
}
}
if (currentSequence.length > 0 && parseInt(arr[arr.length - 1].value, 10) > parseInt(arr[arr.length - 2].value, 10)) {
currentSequence.push(arr[arr.length - 1]);
if (currentSequence.length > maxSequence.length) {
maxSequence = currentSequence.slice();
}
}
return maxSequence;
}
let arr1 = [{ value: '2' }, { value: '4' }, { value: '11' }, { value: '7' }, { value: '8' }, { value: '9' }];
let arr2 = [{ value: '5' }, { value: '20' }, { value: '5' }, { value: '7' }, { value: '9' }, { value: '11' }];
console.log(findSequence(arr1)); // (7, 8, 9)
console.log(findSequence(arr2)); // (5, 7, 9, 11)
^(19[0-9]{2}|20[0-9]{2}|2100)$
let regex = /^(19[0-9]{2}|20[0-9]{2}|2100)$/;
let test = regex.test("2000"); // возвращает true
let test2 = regex.test("1899"); // возвращает false
^(199[0-9]|20[0-9]{2}|2100)$
var data = {
"ID": "414",
"ELEMENT": {
"5333": {
"ID": "5333",
"sort": 300,
},
"5334": {
"ID": "5334",
"sort": 500,
},
"5335": {
"ID": "5335",
"sort": 100,
}
}
}
// Преобразование объекта в массив
var elementsArray = Object.keys(data.ELEMENT).map(function(key) {
return data.ELEMENT[key];
});
// Сортировка массива по sort
elementsArray.sort(function(a, b) {
return b.sort - a.sort;
});
// Выводим массив в консоль
console.log(elementsArray);
var x = 5;
var y = x--;
console.log(y); //5
foo.x = foo = {n: 2};
в реальной жизни, конечно же, делать не стоит, разве что вам нужна обфускация кода. Для удобочитаемости можно даже расставлять скобки там, где они не нужны и ни на что не влияют, чтобы подчеркнуть порядок выполнения вычислений. В данном же случае цепочку присвоений лучше разбить на строки.;
после объявления функций.let words = [
"",
"Hello",
"house",
"Velocity",
"orange",
"Gray",
"Intellegence",
];
let SetRandomWord = function () {
let random
do {
Math.floor(Math.random()*3);
while (random >= words.length);
out.innerHTML = words[random];
}
let MakeInterval = function () {
setInterval(SetRandomWord, 1000);
}
button.addEventListener("click", MakeInterval);
1;
1, 2;
1; 2;
A ? B : C
, где А,B,C - какие-то выражения. Так что можно записывать вместо if-else с отбрасыванием значения:x > 5 ? x-- : x++
vk.com##+js(ra.js, onmouseenter, *)
var hex = "354d413043b4b440e1510b00";
console.log(hex); // 354d413043b4b440e1510b00
var not_hex = (Buffer.from(hex, "hex").toString("binary"))
console.log(not_hex); // 5MA0C´´@áQ♂
var hex_again = Buffer.from(not_hex, 'binary').toString("hex");
console.log(hex_again); // 354d413043b4b440e1510b00
console.log(hex === hex_again); // true