0

我刚刚在 Chromium javascript 控制台中执行了以下代码:

console.log(typeof null);

结果显示在以下屏幕截图中:

在此处输入图像描述

我只是想知道灰<- undefined线是什么意思。有人可以请教吗?

4

1 回答 1

4

undefined这是最后一条语句的返回值。

> 5
5
> "Hello World"
"Hello World"
> (function(){ return 6})();
6

每当 JavaScript 中的函数没有显式返回任何内容时,它都会undefined默认返回。

总结过程,object就是你console.log(typeof null)调用的结果。您的代码运行,登录object到控制台,然后打印函数调用的返回值,即undefined.

这可能是eval工作方式的结果。chrome 中的开发人员工具中的控制台可能eval在您的代码上运行。eval返回您放入其中的最后一条语句/表达式的值

> eval(5);
5

(注意:我知道这很明显,但是在示例中使用 eval 时,我觉得有必要提及,虽然REPL是一个很好的用例,eval但我们必须记住eval 是邪恶的

于 2013-03-11T17:26:01.187 回答