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

题目描述

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

题目来源及自己的思路

相关代码

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

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

题目描述

题目来源及自己的思路

相关代码

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

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

阅读 488
评论
    6 个回答
    • 2.8k

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

      换行相当于两条语句

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

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

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

          return ;
          {
              data:1111
          }

          }

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

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

                撰写回答

                登录后参与交流、获取后续更新提醒

                相似问题
                推荐文章