Двойное восклицание JS - есть ли веские основания для его использования?

Я обсуждаю эту тему с коллегой около недели. Я очень поклонником сокращенного кода, с помощью троичников и т.д., где я могу. В последнее время он спрашивал меня об использовании двойных возгласов. Проведя многочисленные тесты, я начинаю с ним соглашаться... двойные возгласы может быть не разумно использовать в моем коде. Рассмотрим следующее:

var myvar = "Hello";
return (!!myvar ? "Var is set" : "Var is not set");

Приведенный выше пример работает так, как ожидалось. Однако если мы проверяем переменную, которая может возвращать неопределенное значение, мы получаем ошибку, особенно в IE7. Мы получаем наш ожидаемый результат, однако, если мы запускаем это в нашей консоли:

if(randomvar) alert('Works');

С помощью этого подхода, если переменная не определена, она безмолвно терпит неудачу. Это заставляет меня усомниться в использовании двойных возгласов вообще. Есть ли ситуация, которая на самом деле делает этот оператор полезным?

-121--1555572- Планы выполнения SQL Server: фильтр для отображения узких мест? Есть ли способ показать только предметы, которые превышают 1% пакета? Я пытаюсь найти узкие места в процедуре, она содержит петли и другую логику, и 99% результирующего плана выполнения я не...

Есть ли способ показать только предметы, которые составляют более 1% от пакета?

Я пытаюсь найти узкие места в процедуре, она содержит петли и другие логики и 99% результирующего плана выполнения, которые меня не волнуют, но трудно пролистать в Management Studio и на самом деле найти детали, которые замедляют его.

9
задан CaffGeek 19 September 2011 в 20:25
поделиться