js中关于undefined的一个问题

http://img.mukewang.com/583b9...
https://img1.mukewang.com/5bd9560d000161b903150148.jpg

各位大神,上面截图中的undefined是怎么回事?不是已经输出了需要的答案:"Ayne"吗?那么这个undefined是那个返回值?

其次,如果最后一句改为:console.log(yaoxi(text)),为什么会报错?


梦里花落0921
浏览 517回答 1
1回答

青春有我

关于 undefined如上示例,console.log("hello") 输出 hello。把 console.log("hello") 当作一个表达式来看,它没有返回值(即返回值是 undefined),所以输出 undefined。再来一个有返回值的函数试验,可以看到,输出的不再是 undefined,而是 return 出来的内容。注意那个向左带点的小箭头,它表示上一个输入的表达式的计算结果为什么 console.log(yaoxi(text)) 会报错你在调用的那个上下文环境中就没有定义 text 这个变量,所以会报错。text 是定义在 yaoxi 所引用的那个匿名函数中的,在这个函数之外并没有定义 text,所以在这个函数之外使用 text 就会报未定义,或者 ReferenceError 这类错。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript