Показать сообщение отдельно
  #3 (permalink)  
Старый 05.04.2011, 18:16
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Кстати, window.undefined можно переопределить, поэтому не рекомендуется проверять
if(x == undefined)
Но с undefined - это не проблема, потому что есть более граммотные способы. А что делать с переопределенным isNaN?
isNaN = function(){ alert('lol'); };
isNaN( Number('a') );

UPD: Есть такой вариант бороться с этим безобразием:
function myIsNaN( value ){
  if( ( typeof value === 'number' || value instanceof Number ) && String( value ) !== 'NaN' ) return false;
  return true;
};

Последний раз редактировалось Sweet, 05.04.2011 в 18:29.
Ответить с цитированием