Семантика времени выполнения: оценка
UnaryExpression : typeof UnaryExpression
1. Пусть val будет результатом вычисления UnaryExpression. 2. Если val является ссылочной записью Reference Record, тогда а. Если IsUnresolvableReference(val) является true (истинно), вернуть «undefined». 3. Установите val на ? GetValue(val). 4. Верните строку в соответствии с таблицей 41.
Таблица
Тип val | Результат |
---|---|
Undefined | «undefined» |
Null | «object» |
Boolean | «boolean» |
Number | «number» |
String | «string» |
Symbol | «symbol» |
BigInt | «bigint» |
Object (не реализует [[Call]]) | «object» |
Object (реализует [[Call]]) | «function» |
Таблица 41: Результаты оператора typeof
Дополнительную запись, относящуюся к внутреннему слоту [[IsHTMLDDA]], можно найти в B.3.7.3.
Информационные ссылки
Стандарт ECMAScript — Раздел «13.5 Unary Operators» — https://tc39.es/ecma262/#sec-unary-operators
Стандарт ECMAScript — Раздел «13.5.3 The typeof Operator» — https://tc39.es/ecma262/#sec-typeof-operator