function demo(){
console.log("你好")
}
demo()
console.log(demo())
//输出结果:
//你好
//你好
//undefined
1.如果把console.log(demo())注释掉, 只会输出一次"你好", 这个好理解.
2.如果不注释, 像上面这样, 会输出两次"你好"和一次"undefined",
- 这二次的"你好" , 这是哪来的?
-
第三次的"undefined" , 是因为没有return返回值.
- 另外就return想问, return后面可接什么呢? 目前知道像字符串, 变量名等都是可以的. 但return后面接 console.log(demo()), 是什么意思? 测试了下,
console.log("你好")
改为return console.log("你好")
, 第三次仍然会输出"undefined", 为什么不是"你好"呢?
- 另外就return想问, return后面可接什么呢? 目前知道像字符串, 变量名等都是可以的. 但return后面接 console.log(demo()), 是什么意思? 测试了下,
晚上突然发现这个简单东西都解释不了, 感觉这几天白学了......
console.log(demo())
中,demo
函数同样被执行了一次。可以接任何(语法上)合法的东西,
return console.log("你好")
表示返回console.log("你好")
中console.log
方法的返回值,而这个函数并不返回任何东西一如你的demo
函数,因此仍然会看见undefined
。