Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.02.2012, 02:06
Профессор
Отправить личное сообщение для bot87 Посмотреть профиль Найти все сообщения от bot87
 
Регистрация: 16.05.2011
Сообщений: 307

что означает запись ~~k?
1.Встретил в ответах на форуме и хотелось узнать что это такое?
Данная запись применилась коде
var massive= new Array();
massive[1]="слово1";
massive[3]="слово2";
massive[5]="слово3";

for(var k in massive ) {
    if ( ~~k == k ) {
        alert( massive[ k ] );
    }
}
Ответить с цитированием
  #2 (permalink)  
Старый 28.02.2012, 02:19
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

оператор тильда (побитовое НЕ), выполняющий для целых чисел фактически -( n + 1 ).
Ответить с цитированием
  #3 (permalink)  
Старый 28.02.2012, 02:21
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,589

...используется гуру в качестве округления
__________________
29375, 35
Ответить с цитированием
  #4 (permalink)  
Старый 28.02.2012, 02:31
Профессор
Отправить личное сообщение для bot87 Посмотреть профиль Найти все сообщения от bot87
 
Регистрация: 16.05.2011
Сообщений: 307

пасиб Нада погуглить что за
Ответить с цитированием
  #5 (permalink)  
Старый 28.02.2012, 08:36
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

В математике две тильды обозначают приближенное равенство, в нашем унарная тильда является обозначением двойного побитового отрицания и применяется для получения антье т.е. целой части вещественного числа путем округления в меньшую сторону.
Следующее выражение транзитивно:
alert(Math.floor(1.9) === ~~1.9);

alert([Math.floor(1.9) === 1, 1 === ~~1.9, Math.floor(1.9) === ~~1.9]);

Сообщение от Aetae
...используется гуру в качестве округления
Я слышал они предпочитают побитовое | (ИЛИ)
alert(Math.floor(1.9) === (0|1.9));

Последний раз редактировалось monolithed, 28.02.2012 в 09:50.
Ответить с цитированием
  #6 (permalink)  
Старый 28.02.2012, 09:20
Аватар для GuardCat
Просто любитель
Отправить личное сообщение для GuardCat Посмотреть профиль Найти все сообщения от GuardCat
 
Регистрация: 13.09.2011
Сообщений: 300

monolithed, тогда уж, наверное, не
Сообщение от monolithed
alert(Math.floor(1.9) == 0|1.9);
, а
alert(Math.floor(1.9) === (0|1.9))
? Или так задумано?
Ответить с цитированием
  #7 (permalink)  
Старый 28.02.2012, 09:46
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Сообщение от GuardCat
? Или так задумано?
ага, опечатался

Последний раз редактировалось monolithed, 28.02.2012 в 09:49.
Ответить с цитированием
  #8 (permalink)  
Старый 28.02.2012, 10:22
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от bot87
что означает запись ~~k?
Некоторые так записывают простую и понятную конструкцию Math.floor, чтобы непосвящённые не догадались, что на самом деле происходит. А посвящённые просто спотыкаются взглядом при чтении такого кода, это тоже чтобы жизнь мёдом не казалась.
Ответить с цитированием
  #9 (permalink)  
Старый 28.02.2012, 15:23
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Помогите дописать
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Что означает ошибка "Отсутствует исполняющее ядро ДЛЯ расширения имени файла js" Mattias Общие вопросы Javascript 6 15.02.2021 13:16
что означает in в цике for Arkinsstoun jQuery 2 19.01.2012 19:06
помогите, что означает firstChild Dron13 Events/DOM/Window 1 15.01.2011 11:57
Как (эффективно) изучать JavaScript? JSTalker Общие вопросы Javascript 33 23.12.2010 03:13
Что означает такой вызов? ksa jQuery 0 21.12.2010 13:45