Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Борьба с Object.defineProperty в IE8 (https://javascript.ru/forum/offtopic/31305-borba-s-object-defineproperty-v-ie8.html)

nerv_ 02.09.2012 20:29

FINoM, это я понял. Ты мне скажи, зачем конкретно та строчка :)

FINoM 02.09.2012 20:31

Цитата:

Сообщение от nerv_
Ты мне скажи, зачем конкретно та строчка

Не в курсе, лень гуглить.

nerv_ 02.09.2012 20:32

Кажется вспомнил: он вроде как превращает число в int32

devote 02.09.2012 20:46

Цитата:

Сообщение от nerv_
видел где-то, но не помню, что это (кажется какой-то хак)

Цитата:

Сообщение от FINoM
nerv_, этот код сперт с MDN.

мда ответ исчерпывающий)))

Это обычная битовая операция, сдвиг битов в право... Но в данном случае ничего не двигает, ибо сдвиг указан в ноль, но тут именно что и делает просто переводит нечто в число... Это сделано для случая если свойство length не существует, но нужно вернуть число..
пример:
var a = {}
var b = {length: 2}
alert(a.length >>> 0); // получим ноль
alert(b.length >>> 0); // получим 2

nerv_ 02.09.2012 20:51

нашел

devote, спасибо

FINoM, тоже спасибо :)

FINoM 02.09.2012 20:58

Цитата:

Сообщение от nerv_
FINoM, тоже спасибо

Хэх, не за что.
Лучше скажи чего эта хрень не пашет: http://javascript.ru/forum/offtopic/...tml#post202667

nerv_ 02.09.2012 21:17

FINoM, скажу
// create an object with null as prototype
o = Object.create( null );
alert( o.__proto__ );

// create an object with object as prototype
o = Object.create( Object.prototype );
alert( o.__proto__ );

Object.create

FINoM 02.09.2012 21:20

Во, блин, перепутал, затем поленился снова прочесть :D

devote 02.09.2012 21:20

Цитата:

Сообщение от FINoM
Лучше скажи чего эта хрень не пашет

Object.create создает объект унаследованный от первого параметра, но если первым параметром стоит null то создается совершенно пустой объект ни от чего не унаследованный.

FINoM 02.09.2012 21:24

Цитата:

Сообщение от FINoM
И наоборот, если дескриптор содержит get или set, enumerable: true не работает.

Господа, присоединяйтесь к поиску решения. Только этот момент отделяет от более-менее полноценной работы с defineProperty в IE8.


Часовой пояс GMT +3, время: 20:10.