Что за оператор !! и что он делает?
Разбирая скрипт, наткнулся на !!. Хотелось бы узнать, что это и как оно работает.
Вот пример кода, где это было features:{ xpath:!!(document.evaluate), air:!!(window.runtime), query:!!(document.querySelector) }, |
!! - двойное отрицание, применяется для приведения значение к булевому типу:
var i = 10; alert(Boolean(i) == !!i); |
!! это не один оператор, а несколько.
var value = 'string'; alert([ !value, // отрицание !!value, // двойное отрицание => приведение к логическому типу !!!!!value, // можно и так !!!!!!!!!!!!!!!!!!!!!value // и так ]) |
Часовой пояс GMT +3, время: 01:26. |