永发信息网

js中的new加不加有什么区别?

答案:2  悬赏:60  手机版
解决时间 2021-04-05 20:42
  • 提问者网友:夢醒日落
  • 2021-04-05 04:35
js中的new加不加有什么区别?
最佳答案
  • 五星知识达人网友:梦中风几里
  • 2021-04-05 04:47
new  会创建  pre 的对象,
但是没有 new 的话就没有没有可返回的值或对象了,所以是  undefined。


如果不想new 新的对象的话,可以在 pre 的方法里 返回一个值或对象。
function pre(){
    this.radius = Math.random();
    return this.radius;
}追问你和第一位回答者说的相近,同样谢谢3q追答期待采纳 O(∩_∩)O
全部回答
  • 1楼网友:酒醒三更
  • 2021-04-05 06:10
加 new 会把这个函数当作是一个构造器,返回一个对象。
不加的话,就是调用一个普通的函数,结果视函数返回值而定。追问额,也就是说不加new就按普通函数来push的,push的不是对象了?是每一次的返回值?追答是啊。你可以给函数加个返回值试一下。追问如果是第一种情况有new的情况下,我在函数中return this.radius;那cosole.log()出来的结果并不是[0.1,0.33,0.4556,0.33],而还是[pre,pre,pre,pre]这怎么解释呢??追答有new,就返回对象,不管函数返回值如何。
无new,就看函数返回值。追问嗯嗯,3q追答构造函数最好返回 this 或者无返回值, 否则容易混淆。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯