控制台输入一句代码,实际是执行了eval函数(猜测),具体可以看下面博文
https://blog.csdn.net/qq_40938301/article/details/87489046
问题描述:
类似于上图所示,在浏览器Console控制台输入js代码时,除了要得到的结果,还会有一个左箭头以及undefined的值的输出。
分析:
1、尝试其他多种输入:
(1)1
(2)。 // 句号
(3)‘ ’ // 单引号
2、然后我们需要了解js中一个顶层函数(全局函数)eval(),或可以理解为js自带的系统函数
eval(string)
其作用是将 接收的 string 字符串作为参数,对其进行JavaScript 表达式或语句 计算,返回得到的值;
如果是没有返回值的表达式或语句,则会返回 undefined ;
如果没有合法的表达式和语句,则会抛出 SyntaxError 异常 。
于是我们可以猜测Console控制台的实质 就是 调用了eval()函数
3、验证
原因:
因为Console控制台的实质,即eval()函数,所以当输入的表达式或语句没有返回值时,会返回 undefined 。