Показать сообщение отдельно
  #23 (permalink)  
Старый 07.04.2020, 20:25
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,704

Сообщение от laimas Посмотреть сообщение
Поэтому глубоко рассуждать о том, что принято как понятие/термин, какой смысл.
Ну просто это определение языка. Его синтаксис и семантика.

https://www.ecma-international.org/e...9.0/index.html

Определяется понятие объекта. Определяется, что имена свойства объекта - строки. Вводится понятие "целочисленного индекса" причем для обычных объектов тоже. Но говорится, что это все равно строка

6.1.7
Properties are identified using key values. A property key value is either an ECMAScript String value or a Symbol value. All String and Symbol values, including the empty string, are valid as property keys. A property name is a property key that is a String value.

An integer index is a String-valued property key that is a canonical numeric String (see 7.1.16) and whose numeric value is either +0 or a positive integer ≤ 253-1. An array index is an integer index whose numeric value i is in the range +0 ≤ i < 232-1.

А дальше добавляется некоторая "экзотика" для объектов Аrray, Snring, Function...
Но нигде не говорится, что индекс массива, это что то иное, чем свойство объекта, заданного строкой.

Вообще разгвор (мой пост) начался с того, почему не сделать в javascript отрицательные "индексы" у массивов.
Потому, что они уже есть. Но у них другая семантика. А менять семантику того, что уже есть, и быть может, как то кем то используется - низя!

Последний раз редактировалось voraa, 07.04.2020 в 20:33.
Ответить с цитированием