return 后边大括号位置不同有什么区别呢

题目描述

图片描述
图片描述
图片描述
图片描述

题目来源及自己的思路

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

题目描述

题目来源及自己的思路

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?

阅读 4.9k
6 个回答

第一个,你将大括号位置换了行,return就是一条语句,尽管你没有写分号,但函数已经运行完成,也就当成了没有返回值,没有返回值,函数默认就会返回undefined,大括号后面的就属于return后的语句,return后的语句是永远也不会执行的。第二个return语句后紧跟返回值,你的返回值就是一个对象,所以也就返回对象呢。

换行相当于两条语句

 return; 后面的不会执行 没有返回值
 {
     data:'111'
 };

js语言的 no LineTerminator here 机制, return 语句后面不能加换行符

因为javascript对格式的书写比较松 分号可以不写 它可以自动不全 这在类似php中不写分号肯定会报错的
实际上他就变成了
function demo{

return ;
{
    data:1111
}

}

js自动在换行的时候补全了分号。实际上就执行完毕了

return 后面不能加换行符 加了就会给你默认补全了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题