javascript - "unevaluated"运算符的描述中的 "typeof"是什么意思?

标签 javascript typeof

来自MDN :

The typeof operator returns a string indicating the type of the unevaluated operand.

请问此描述中的“未评估”是什么意思?

<小时/>

因为在 typeof func() 函数中被调用(这是合理的,但与前面的描述有点不一致):

function func() {
  console.log('func is called');
  return 0;
}

console.log(typeof func());

最佳答案

这是一个极具误导性的术语。当然,typeof需要将其操作数计算为一个值来确定该值的类型!

只有一个值得注意的异常(exception),这可能就是“未评估”所指的:typeof 不评估无法解析的引用。如果您使用尚未在任何地方声明的标识符,则对其求值通常会引发异常(至少在严格模式下)。但是,typeof 只会告诉您它是“未定义”

关于javascript - "unevaluated"运算符的描述中的 "typeof"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48491177/

相关文章:

javascript - MongoDB 带有 geojson 的畸形几何

c# - 在 C# 中,如何在给定类型名称的情况下创建对象?

javascript - Firefox 17 location.constructor 异常

javascript - typeof 在 IE 中返回 "unknown"

JavaScript:null 是什么数据类型?

c++ - Boost::typeof 编译器问题:修改 typeof,使用 decltype 代替

javascript - $state.go() 不路由到其他状态,url 中的 #/null

javascript - 如何使用 glyphicon 上传图像而不是使用那个长输入字段?

javascript - 如何使用 Protractor 验证不同位置的两个跨度是否相等?

javascript - Angular.js 中的 input[radio] 问题未定义且未经检查