详解JS构造函数中this和return

 更新时间:2017年09月16日 09:35:06   作者:isco_22  
本文通过实例代码给大家介绍了JS构造函数中this和return,需要的朋友参考下吧

先看一段代码,

function Foo(name,age){
  this.name=name;
  this.age=age;
}
var foo=new Foo("Tom",14);
foo.name;//Tom
foo.age;//14

使用构造函数实例化发生的流程:

1.建立一个foo的空对象。

2.将构造函数中的Foo的this指向对象foo。

3.foo的_proto_属性指向Foo函数的prototype原型。

4.执行构造函数中的代码。

相对于普通函数,构造函数中的this是指向实例的,而普通函数调用中的this是指向windows的。

构造函数中如果加入了return的话,分两种情况

function Foo(name,age){
  this.name=name;
  this.age=age;
  return {name:"Jeff"}
}
var foo=new Foo("Tom",14);
foo.name;//Jeff

1.return的是五种简单数据类型:String,Number,Boolean,Null,Undefined。

这种情况下,忽视return值,依然返回this对象。

2.return的是Object。

 这种情况下,不再返回this对象,而是返回return语句的返回值。

总结

以上所述是小编给大家介绍的JS构造函数中this和return,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言小编会及时回复大家的!

相关文章

  • 提升JavaScript加载速度的10种方式

    提升JavaScript加载速度的10种方式

    在许多现代网站中,有大量的JavaScript,事实上,JavaScript的下载和解析都需要时间,这使得网站的加载速度大大降低,有一些简单的方法可以减少你在网站上加载的JavaScript数量,并使你正在加载的JavaScript加载得更快,我们今天将介绍这些方法
    2023-06-06
  • JavaScript 高级语法介绍

    JavaScript 高级语法介绍

    前几天一个同事问我如下的JavaScript代码如何理解
    2009-06-06
  • js 将多个对象合并成一个对象 assign方法的实现

    js 将多个对象合并成一个对象 assign方法的实现

    这篇文章主要介绍了js 将多个对象合并成一个对象 assign方法的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • js实现抽奖功能

    js实现抽奖功能

    这篇文章主要为大家详细介绍了js实现抽奖功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • CSS+Js遮罩效果的TAB及焦点图片切换(推荐)

    CSS+Js遮罩效果的TAB及焦点图片切换(推荐)

    CSS+Js图片切换技术,类似的已有不少了,这一个使用了遮罩过渡的效果,同样应用到了TAB选项卡上,本页面仅是为了演示,大家用时候把它拆分开来,这个效果也对学习图片效果制作很有帮助。
    2009-11-11
  • jquery ajax应用中iframe自适应高度问题解决方法

    jquery ajax应用中iframe自适应高度问题解决方法

    很多管理系统中,都使用iframe进行信息内容的展示方式,或者作为主菜单的链接展示内容。使用iframe的问题就是自适应高度的问题
    2014-04-04
  • javascript面向对象程序设计实践常用知识点总结

    javascript面向对象程序设计实践常用知识点总结

    这篇文章主要介绍了javascript面向对象程序设计实践常用知识点,结合实例形式总结分析了javascript面向对象程序设计中原型引用类型、属性、方法相关操作技巧与注意事项,需要的朋友可以参考下
    2019-07-07
  • 模拟弹出菜单的代码

    模拟弹出菜单的代码

    模拟弹出菜单的代码...
    2007-08-08
  • elemetUi 组件--el-upload实现上传Excel文件的实例

    elemetUi 组件--el-upload实现上传Excel文件的实例

    这篇文章主要介绍了elemetUi 组件--el-upload实现上传Excel文件的实例的相关资料,希望通过本文大家能够实现这样的功能,需要的朋友可以参考下
    2017-10-10
  • Bootstrap教程JS插件滚动监听学习笔记分享

    Bootstrap教程JS插件滚动监听学习笔记分享

    这篇文章主要为大家分享了Bootstrap教程JS插件滚动监听学习笔记,内容很详细,感兴趣的小伙伴们可以参考一下
    2016-05-05

最新评论