【JavaScript】面向对象

构造函数

定义:通过 new 函数名 来实例化对象的函数叫构造函数。任何的函数都可以作为构造函数存在。之所以有构造函数与普通函数之分,主要从功能上进行区别的,构造函数的主要 功能为 初始化对象,特点是和new 一起使用。new就是在创建对象,从无到有,构造函数就是在为初始化的对象添加属性和方法。构造函数定义时首字母大写(规范)。

对new理解:new 申请内存, 创建对象,当调用new时,后台会隐式执行new Object()创建对象。所以,通过new创建的字符串、数字是引用类型,而是非值类型。
  
  首字母大写
构造函数不写return
不建议当做普通函数去用,构造函数中的this指向的是window,所以普通函数去调用获取里面的值只能用window.name,如:
var obj1=CreateObj(“hefan”)
console.log(window,name)

<script>
    //系统自带构造函数
    // new Object() new String() new Array()
    //自定义构造函数
function CreateObj(name,sex,location){
    this.name=name;
    this.sex=sex;
    this.location=location;
}
var obj1=new CreateObj("hefan","man","henan");
var obj2=new CreateObj("照明线","woman","henan");

console.log(obj1)
console.log(obj2)

    </script>

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

实例化对象:

var obj1=new CreateObj("hefan","man","henan");

其实在new CreateObj(“hefan”,“man”,“henan”);这一步已经实例化对象了,this指向这个实例化对象,存放在堆区里面了。var obj1只是把这个实例化对象赋给了一个变量,然后this就指向这个变量了。通过这个变量就可以调用这个实例化对象。
在这里插入图片描述

JavaScript中的堆区和栈区:

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值