Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Что за оператор !! и что он делает? (https://javascript.ru/forum/misc/13268-chto-za-operator-i-chto-delaet.html)

demoniqus 23.11.2010 16:56

Что за оператор !! и что он делает?
 
Разбирая скрипт, наткнулся на !!. Хотелось бы узнать, что это и как оно работает.
Вот пример кода, где это было

features:{
			xpath:!!(document.evaluate),
			air:!!(window.runtime),
			query:!!(document.querySelector)
			},

monolithed 23.11.2010 17:03

!! - двойное отрицание, применяется для приведения значение к булевому типу:
var i = 10;
alert(Boolean(i) == !!i);

B@rmaley.e><e 23.11.2010 18:54

!! это не один оператор, а несколько.
var value = 'string';
alert([
  !value, // отрицание
  !!value, // двойное отрицание => приведение к логическому типу
  !!!!!value, // можно и так
  !!!!!!!!!!!!!!!!!!!!!value // и так
])


Часовой пояс GMT +3, время: 01:26.