#javascript
#javascript
Вопрос:
У меня есть следующий код (Javascript):
var boolA = false;
var boolB = Math.random()*2 ? true : false;
Я не знаю, будет ли boolB иметь значение true или false, но мне все равно нужно обновлять boolA с его помощью каждый тик. Должен ли я просто обновить ее или проверить, была ли она изменена?
Что быстрее?
boolA = boolB;
или
if ( boolB != boolA ) boolA = boolB;
Как насчет целых чисел, строк и других объектов?
Заранее благодарю вас!
Комментарии:
1. Почему бы не попробовать это? Сделайте это миллион раз и посмотрите, какой из них занимает больше времени? Просто не забудьте сделать это в каждом существующем движке JavaScript.
2. Вы можете попробовать это здесь: jsperf.com
3. На самом деле не имеет отношения к вопросу, но
Math.random()*2
почти всегда не будет оцениваться какtrue
? Единственный раз, когда этого не произойдет, — это когдаMath.random()
результат точно0
. Но, возможно, это то, чего вы хотите, я не уверен.
Ответ №1:
Прямое назначение всегда будет самым быстрым.