如何解决Chrome浏览器中console.log()输出后出现undefined提示的问题
Chrome控制台执行
console.log()后出现末尾undefined提示的解决办法 出现原因
Chrome开发者工具控制台属于交互式REPL(读取-求值-输出循环)环境,除了输出代码中主动调用console.log()打印的内容外,还会默认输出当前执行语句的返回值。而console.log()方法本身没有设定返回值,默认返回undefined,因此会在打印内容后额外多出一行undefined提示。
注意:这个提示仅会在你直接在控制台手动输入代码执行时出现,嵌入页面的JS代码/外部JS文件正常运行时,不会主动打印语句返回值,不会出现该提示。
消除方法
- 方法1:在
console.log()前添加void关键字,强制告知REPL忽略当前表达式的返回值,示例代码:
var example = 5; void console.log(example);
执行后仅会输出5,不会显示末尾的undefined。
- 方法2:用赋值语句包裹
console.log()调用,变量声明赋值类语句的完成值不会被REPL主动打印,示例代码:
var example = 5; var temp = console.log(example);
- 方法3:将需要执行的代码包裹在无返回值的立即执行函数内,示例代码:
var example = 5; (() => { console.log(example); })();
内容的提问来源于stack exchange,提问作者J.Denver
相关产品推荐
相关产品推荐

