javascript - Chrome 开发者工具 : what's this arrow(<-) meaning?

标签 javascript while-loop google-chrome-devtools

我对 Chrome DevTools 中的这个符号 (<-) 感到困惑

javascript while loop in DevTools Console

是返回值还是控制台值?

当我运行这个 while 循环时

var i = 0;
while (i < 5) {
    console.log(i);
    i++;
}

console log两次吐出4,最后4个前面有个(<-),什么意思?

最佳答案

这与 eval 函数的性质有关。请注意:

var i = 0, j = while(i < 5) { i++; };

产生编译错误。然而,

var i = 0, j = eval('while(i < 5) { i++; }');

将值 4 赋值给 j。为什么是这样?引自 MDN :

eval() returns the value of the last expression evaluated.

简而言之,它会评估表达式中对 console.log 的所有调用,然后还会记录来自 eval 表达式本身的返回值,这只是恰好是最后一个i++的结果。

关于javascript - Chrome 开发者工具 : what's this arrow(<-) meaning?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21820746/

相关文章:

javascript - 即使使用 javascript 且没有框架更改 html 页面,也可以使视频连续播放

javascript - 如何确定可选函数是否已传递到 Angular 指令中?

php - 虽然循环使用单选按钮为许多用户将值插入数据库

javascript - 以编程方式访问函数位置

websocket - 如何从 WebSocket( Protocol Buffer )中查看二进制数据

javascript - Node.js 如何识别服务器端和客户端脚本?

javascript - NodeJS - 需要的模块未同步工作

Python while 循环在定义的时间后不会终止

php - while() 和 for() 有什么区别?

javascript - 在 Chrome 的 Javascript 调试器中前进 N 次