массив окон в mathjax - PullRequest
       15

массив окон в mathjax

2 голосов
/ 15 января 2012

Я пытаюсь понять API MathJax для взлома, который я пишу.Первая строка кода представляет собой анонимную функцию с массивом window.Что это за "window массив"?Вот код:

(function (d) {
            var b = window[d];
//...
})('MathJax')

Пожалуйста, помогите мне разобраться в этом.

1 Ответ

1 голос
/ 15 января 2012

Это не массив; это просто объект window.

В JavaScript есть два способа доступа к свойствам объекта: object.property и object['property'].

Первый синтаксис работает только тогда, когда имя свойства имеет допустимый идентификатор JavaScript ; вторая работает для любого имени свойства.

Вот искусственная демонстрация, которая несколько соответствует вашему коду ( попробуйте на JSFiddle ):

function lookThroughWindow(nameOfProperty) {
    alert(window[nameOfProperty]);
}

var propertyName = 'location';
lookThroughWindow(propertyName);

// The above just does this:
alert(window.location);
...