С консоли Chrome:
> myParam = {"test": "test value"}
> myFunc = function(x) { myParam[x] = x; }
> myFunc("func value")
> myParam
{test: "test value", func value: "func value"} // (a) question
> myFunc(2)
> myParam
{2: 2, test: "test value", func value: "func value"}
> myFunc()
> myParam
{2: 2, test: "test value", func value: "func value", undefined: undefined} // (b) question
это последняя версия Chrome на сегодняшний день (69.0.3497.100)
Пожалуйста, объясните, как, в JavaScript
a) может быть создан элемент объекта, содержащий пробелы («значение myParam.func»)
b) может быть создан «неопределенный» элемент объекта («myParam.undefined»)
c) дляслучай (b), действительно ли "undefined" действительно "undefined" или просто строка "undefined"?
PS. Благодаря замечанию @ ryanpcmcquen, следующий PS
PPS. Не могли бы вы подтвердить мое предположение, что это Google Chrome v (69.0.3497.100) ошибка отображения консоли если строки не отображаются в виде строк , «между скобками» и красным цветом?
PPS.
Только Firefox , кажется, правильно отображает строковые клавиши:
Chrome, Opera
Firefox
Edge
MS IE