#javascript
if (~e.origin.indexOf("https://example.com")) Что значит данный символ ~ в этом поле?
Ответы
Ответ 1
Побитовое отрицание. Аргумент приводится к int32 (приводится к числу, дробная часть отбрасывается, число берётся по модулю 232 со знаком, NaN и бесконечности превращаются в 0), после чего все 32 бита инвертируются, давая новое число. indexOf возвращает позицию вхождения или -1 если вхождения нет. При инветрировании всех битов у числа -1 получается 0 - ложное значение. А из всех остальных значений (с учётом того, что длина строки не превосходит 231-1) будет получаться ненулевой истинный результат. Т. е. делается проверка, что вхождение есть.
Комментариев нет:
Отправить комментарий