Показать сообщение отдельно
  #1 (permalink)  
Старый 26.05.2015, 19:23
Аспирант
Отправить личное сообщение для indeterm Посмотреть профиль Найти все сообщения от indeterm
 
Регистрация: 26.05.2015
Сообщений: 43

Это что ваще такое?
Данный код:

Object.prototype.has=Object.prototype.hasOwnProperty
delete Object.prototype.hasOwnProperty
a={a: 1}

console.log(
 a.has("a")
)


//>>>> node.js:784
//>>>>     return NativeModule._source.hasOwnProperty(id);
//>>>>                                 ^
//>>>> TypeError: undefined is not a function


-- это валидный JS-код. Он работает, в том числе и на V8. Однако, нода выдает мне эту ахинею. Поведение это противоречит семантике JS, это реальный WTF.
Как это все говно пофиксить? Можно ли? И в чем вообще прикол? Почему это происходит?
Ответить с цитированием