Javascript 之构造器深入解析

本文深入探讨了JavaScript中构造函数的概念及使用方式,包括其作为对象实例创建方式的特点,以及通过new操作符与其他调用方式的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//自定义构造函数
function Person(name,age,job){
  this.name = name;
  this.age = age ;
  this.job = job;
this.sayName = function(){
  alert(this.name);
};
}

构造函数即是对象实例创建方式,同时也是函数。任何函数,只要通过new操作符来调用,那他就是构造函数;而任何函数,如果不同过new操作符来调用,那它跟普通函数也不会有任何两样;
一下三种调用方式;
//1   当作普通方式;
var  person = new Person("Nic",33,"softer");
person.sayName();  // "Nic";

// 作为普通函数调用
Person(("Nic",33,"softer"); // 添加到window;

window.sayName();  // Nic

// 解析:当Person当作普通方法使用时,是把此方法加入宿主环境window中,方法中的this当没有用new创建出来实例对象时,this就是指向window;


// 另一种方法,使用call方法调用作用域

var o = new Object();

Person.call(o,"nic",25,"nur");  // 第一个参数,实例对象函数。第二个以后是函数参数;

o.sayName();  // nur   










评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值