null instanceof Object
Вроде null как объект но почему тогда?
<script> var n1=null; var n2=Object(n1); alert(n1 instanceof Object);//false alert(n2 instanceof Object);//true </script> |
null не является объектом
http://javascript.ru/blog/Dmitry-A.-...vnyh-znacheniy |
Во что превращается null после метода Object()
Ведь для него нету подобия объекта как для string, number и boolean |
Мне кажется ни во что, функция Object просто возвращает новый пустой объект, когда ее вызывают с аргументом null:
alert([
typeof Object().valueOf(),
typeof Object(null).valueOf(),
Object().valueOf() === Object(null).valueOf(),
null === null
]);
|
Ясно, спасибо вам=)
|
Что-то я помозговал не совсем ясен смысл строки.
Object().valueOf() === Object(null).valueOf(), |
тут привидение к примитивному типу срабатывает:
var s1 = "abc";
var s2 = new String("abc");
alert([
s1 === s2,
s1 === s2.valueOf()
]);
а в случае с null нет:
var n1 = null;
var n2 = new Object(null);
alert([
n1 === n2,
n1 === n2.valueOf()
]);
отсюда делаем вывод, что Object просто новый объект создает, не запоминая null |
все ясненько)
c undefined похоже все также |
| Часовой пояс GMT +3, время: 05:05. |