Что такое «скрипт-геттер» в JavaScript? - PullRequest
0 голосов
/ 19 июня 2011

Я читал Знай свои движки - как сделать свой JavaScript быстрым (pdf) сегодня и наткнулся на этот код JavaScript на слайде # 25 Свойства в медленной зоне .

// "Scripted Getter"
var a = { x: get() { return 1; } };

Это ошибка разбора в Safari 5.0.5.

Кто-нибудь может догадаться, что такое «скрипт-геттер» в JavaScript?

1 Ответ

1 голос
/ 19 июня 2011

Я понятия не имею, над какой реализацией должен работать ваш синтаксис.В документе утверждается, что он «быстрый в IE», поэтому он может иметь специфический для IE синтаксис.

Существует функция ECMAScript 5, в которой синтаксис имеет вид:

var a = { get x() { return 1; } };

И был более старыйФункция Mozilla, в которой синтаксис:

a.__defineGetter__("x",function () { return 1; });

Идея заключается в том, что при доступе к топору он запускает функцию и возвращает возвращаемое значение.Когда вы записываете в свойство x, он выполняет функцию, определенную как установщик, таким же образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...