
Size: a a a
var n1 = 9999;
var n2 = 9998;
if (n1 > n2) {
console.log("Число " + n1 + " больше, чем " + n2 + "!");
} else if (n1 < n2) {
console.log("Число " + n2 + " больше, чем " + n1 + "!");
} else {
console.log("Оба числа равны!");
}
console.log(Math.max.apply(null, [1, 2, 3, 4, -5, 10, -100, 50, 99]));
Math.max.apply
— выводит самое большое число из массива. В общем, очередная задачка на логику.Math.max
— выводит самое большое число, а метод apply
— позволяет запустить Math.max
с массивом аргументов. Боги JavaScript! Не гневитесь!true
.while
— самый простой вид циклов. while
используют, если есть какое-то определённое условие. Пример:var numbers = 0;
while (numbers < 5) {
console.log(numbers + "!");
numbers++;
}
console.log("Расчёт окончен!");
//result Посчитает от 0 до 4 и напишет «Расчёт окончен!»
numbers++
— это приращение (увеличивает значение на 1
). Если убрать эту строку, то цикл станет бесконечным, а результат всегда будет 0
.for
— чуть сложнее. Этот вид цикла чаще всего используют для работы с массивами. Пример предыдущего цикла, написанного через for
:for (var numbers = 0; numbers < 5; numbers++) {
console.log(numbers + "!");
}
console.log("Расчёт окончен!");
//result Посчитает от 0 до 4 и напишет «Расчёт окончен!»
for
, который перебирает массив:var iLike = ["пёсика", "котика", "пожрать"];
for (var i = 0; i < iLike.length; i++) {
console.log("Я люблю " + iLike[i] + ".");
}
//result Я люблю пёсика. Я люблю котика. Я люблю пожрать.
var iLike = ["пёсика", "котика", "пожрать"];
for (var i = 0, max = iLike.length; i < max; i++) {
console.log("Я люблю " + iLike[i] + ".");
}
//result Я люблю пёсика. Я люблю котика. Я люблю пожрать.
max
, а не считается каждый раз при новой итерации, как в варианте выше. Следовательно, код будет работать быстрее. Конечно, при таком маленьком массиве разница не будет заметна, но если можно сделать лучше — надо делать.getTime()
. Про сам метод можно почитать тут.for
, в него складываются индексы:var testI = [];
for (var i = 1; i < 100000000; i++) {
testI.push(i);
}
var start1 = new Date().getTime();
for (var j = 0; j < testI.lenght; j++) {
200000000000000000000 * 3000000000000 + 30000000000000 + 100000000000000;
}
var end1 = new Date().getTime();
console.log("Операция №1 заняла: " + (end1 - start1) + " мс.");
start1
записывается начальное время, а после его выполнения в переменную end1
записывается конечное время. Затем, из конечного времени вычитается начальное и получается время выполнения цикла.var start2 = new Date().getTime();
for (var q = 0, max = testI.lenght; q < max; q++) {
20000000000000000000 * 3000000000000 + 30000000000000 + 100000000000000;
}
var end2 = new Date().getTime();
console.log("Операция №2 заняла: " + (end2 - start2) + " мс.");
var testI = [];
for (var i = 1; i < 100000000; i++) {
testI.push(i);
}
var start1 = new Date().getTime();
for (var j = 0; j < testI.lenght; j++) {
200000000000000000000 * 3000000000000 + 30000000000000 + 100000000000000;
}
var end1 = new Date().getTime();
console.log("Операция №1 заняла: " + (end1 - start1) + " мс.");
var start2 = new Date().getTime();
for (var q = 0, max = testI.lenght; q < max; q++) {
20000000000000000000 * 3000000000000 + 30000000000000 + 100000000000000;
}
var end2 = new Date().getTime();
console.log("Операция №2 заняла: " + (end2 - start2) + " мс.");
//result Операция №1 заняла: 0 мс. Операция №2 заняла: 0 мс.
length
. Как обычно, большое спасибо моим подписчикам за обратную связь. Исправленный код:var testI = [];
for (var i = 1; i < 100000000; i++) {
testI.push(i);
}
var start1 = new Date().getTime();
for (var j = 0; j < testI.length; j++) {
200000000000000000000 * 3000000000000 + 30000000000000 + 100000000000000;
}
var end1 = new Date().getTime();
console.log("Операция №1 заняла: " + (end1 - start1) + " мс.");
var start2 = new Date().getTime();
for (var q = 0, max = testI.length; q < max; q++) {
20000000000000000000 * 3000000000000 + 30000000000000 + 100000000000000;
}
var end2 = new Date().getTime();
console.log("Операция №2 заняла: " + (end2 - start2) + " мс.");
//result Операция №1 заняла: 101 мс. Операция №2 заняла: 97 мс.
var myFunction = function () {
console.log("Пёсики и котики!");
};
myFunction();
//result Пёсики и котики!
myFunction();
— вызывает функцию и исполняет её тело.var cat = function (catName) {
console.log("Мой любимый котик — " + catName + ".");
}
cat("Чехов");
//result Мой любимый котик — Чехов.
catName
— имя аргумента. При исполнении кода имя изменится на Чехов
.var cats = function (howManyTimes) {
for (var i = 0; i < howManyTimes; i++) {
console.log("Котик " + i);
}
};
cats(5);
//result Посчитает котиков до 5
cats(5);
— количество итераций цикла.var doublePrint = function (howManyTimes, animal) {
for (var i = 0; i < howManyTimes; i++) {
console.log(" " + animal + i);
}
}
doublePrint (5, "Котик ");
//result Посчитает котиков до 5
core.js
. Он хранит в себе практически весь код (привет, говнокод) и занимает всего 153 строки с учётом комментариев. Весь текст вынесен в text.json
. Ключи тоже хранятся отдельно./start
, чтобы всё исправить. После этого бот должен перезапуститься. Либо удалите его из списка чатов и снова добавьте. Так тоже будет работать.