Показать сообщение отдельно
  #11 (permalink)  
Старый 07.11.2009, 00:14
...
Отправить личное сообщение для Zeroglif Посмотреть профиль Найти все сообщения от Zeroglif
 
Регистрация: 09.03.2008
Сообщений: 216

Цитата:
В JavaScript нет оператора, позволяющего проверить, относится ли метод или атрибут непосредственно к объекту
относится ли свойство

Цитата:
Оператор == перед проверкой на равенство осуществляет преобразование типов
Зависит от сравниваемых значений. null == undefined -> нет конвертации

Цитата:
Функции, как и любые другие объекты, могут иметь поля и методы.
Полей, слотов и проч. нет, или просто свойства или свойства и методы

Цитата:
с помощью псевдо-массива arguments
объект это, если приставка "псевдо" характеризует нечто особенное, то придётся описывать реализацию этого объекта в той же опере, где это совсем не псевдо, но лучше ограничиться термином из стандарта (ES 10.1.8)

Цитата:
Определяет, является ли данный объект прототипом объекта-аргумента
находится ли объект в цепи прототипов

Цитата:
На сегодняшний день поддержку JavaScript обеспечивают современные версии всех наиболее часто используемых браузеров. При этом в полной мере ядро языка поддерживается браузерами[96]:

* Mozilla Firefox версии 2 и выше,
* Opera версии 9 и выше.
Где IE? Внесите IE в список!!!, наличие Оперы с кучей багов и отложенной реализацией EcmaScript вкупе с вечным отсутствием документации выглядит анекдотом при отсутствии IE с его давным давно сделанной реализацией. Отсылка на смешную матрицу, где выбраны 2 бага реализации ES в IE и нет вообще ни одного бага в отношении FF, которых куча, не может считаться объективной. В настоящее время у ВСЕХ!!! браузеров есть недочёты (недореализация ES или определённые баги). Выталкивать из списка IE за такую ерунду, как trailing comma в массивах... хм... ;-)
Цитата:
С момента публикации статьи ситуация улучшилась[102]. Особенно в отношении англоязычных источников.
Ухудшилась ситуация.
Цитата:
Оператор + является единственным арифметическим операторов в языке, который перегружен для строковых аргументов. Таким образом, если оба его операнда являются числами, он вычисляет их сумму, но если хотя бы один из операндов — строка, + действует как конкатенатор.
А если нет строк в операндах, но и чисел тоже нет, или одно число...? Это я к тому, что для вычисления суммы необязательно наличие операндов-чисел.
Цитата:
идентификаторы функций являются переменными, хранящими ссылку на функцию
Можно было бы уточнить, что стандарт этого (кас. ссылок) не раскрывает вообще. Если вам нужны ссылки на цитаты Брендана по этому поводу, то они есть в соседней теме, где обсуждалось by-value. Идентификаторы функций не являются переменными в смысле EcmaScript.
Цитата:
При объявлении функции последовательность областей видимости, относящихся к вложенным функциям сохраняется как составляющая состояния функции. То есть в процессе выполнения JavaScript-программы функции, обладающие доступом к локальным переменным объемлющих функций, сохраняют такой доступ на протяжении всего выполнения программы
Двусмысленный текст получился. При объявлении функции вложенных функций "как бы нет", поэтому области видимости к ним не относятся.
Цитата:
var uniqueId = (function() {
var id = 0;
return function() { return id++; };
})();
Скобки вокруг функции не нужны в этом случае. И без скобок выражение.
Цитата:
typeof inc === 'number'
Результатом 'typeof' будет строка. Сравнивая строку со строкой, совершенно не нужно использовать строгое сравнение, сравниваются значения одного типа изначально. Одно значение вы задали руками, второе значение вписано в алгоритм языка.
Цитата:
Каждый объект в языке имеет следующие свойства: constructor...
Обязательно нужен акцент на то, что это и другие там же перечисленные свойства являются наследуемыми, а не собственными свойствами объекта.
Цитата:
Для обеспечения кросс-браузерности и высокого уровня абстракции при разработке веб-приложений используются библиотеки JavaScript. Они представляют собой набор многократно используемых объектов и функций.
Абстракции - да, кросс-браузерности - нет, подавляющее большинство фреймворков (если не все) кроссбразерными не были не минуту своей жизни. ;-)
Цитата:
JavaScript использует прототипный подход (где нет классов, а объект — просто хеш);
В javascript объект - это не хэш... или расшифровывайте тогда, что такое хэш, чтобы не путали те, у кого в голове соответствующее представление. Объект в javascript наследует, "не пуст" и проч...

Всё. Дочитал. Хорошая статья - обзорная, сухо и достаточно точно написанная. Спасибо за труд.

Последний раз редактировалось Zeroglif, 08.11.2009 в 17:56.
Ответить с цитированием