Показать сообщение отдельно
  #2 (permalink)  
Старый 17.01.2018, 23:57
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,517

Чтоб делать так, например:
function func(number){
  number *= 2;
  if( number > 1 ){
    return 1
  }else if( number < 1 ){
    return -1
  }else if( number == 1 ){
    return 0
  }
  return 'wtf?'
}
alert(
  func('not a number')
);

Любое сравнение с NaN вернёт false, даже с самим собой. Это позволяет делать много штук, если умеючи.
Однако основной смысл введения NaN в самой парадигме js - минимизация вреда от ошибочных данных, т.е. программа должна хоть как-то работать, независимо от того, что там наговнокодил очередной индус. Это не делает языку чести, зато сильно понижает порог вхождения, что от него и требовалось изначально.)
__________________
29375, 35

Последний раз редактировалось Aetae, 18.01.2018 в 00:00.
Ответить с цитированием