守候你守候我
2019-03-21 18:19:02
直接在firebug控制臺里面運行代碼:function test() {console.log("1");}輸出undefined;加上test()之后運行,輸出1和undefined。請問,為什么會輸出undefined?
4 回答

BIG陽
TA貢獻1859條經(jīng)驗 獲得超6個贊
函數(shù)沒有返回值,運行之后輸出undefined
不是很正常么?而且Chrome的審查工具和Firefox自帶的控制臺都是這么輸出的,并不是只有Firebug的說。

MM們
TA貢獻1886條經(jīng)驗 獲得超2個贊
也許可以這樣說,不指明return值都返回undenfined
function hi(){ return '123'}; hi() //只有'123'了

一只甜甜圈
TA貢獻1836條經(jīng)驗 獲得超5個贊
通常 REPL(read–eval–print loop, 交互式執(zhí)行環(huán)境) 會打印被輸入的每個表達式的值。
function test() { console.log("1");}
大概不是一個表達式(具體我也不大清楚), 所以會打印 undefined.
而輸入 test()
后,test 函數(shù)本身會打印一個 1, 然后還會打印 test()
的值,即 test 函數(shù)的返回值,即 undefined(無返回值).

慕雪6442864
TA貢獻1812條經(jīng)驗 獲得超5個贊
添加回答
舉報
0/150
提交
取消