js学习第七篇:javaScript构造函数

文章介绍了JavaScript中的构造函数,它是一种特殊函数,用于初始化对象并设置其属性。构造函数可以避免重复代码,提高效率。创建构造函数时要注意首字母大写,不需return,使用this指定对象的属性和方法。实例化是通过new关键字创建对象的过程,new会创建一个空对象,执行构造函数并返回该对象。文章还对比了构造函数与对象的区别,前者抽象公共部分,后者表示具体实例。

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

十八、构造函数

1.构造函数是什么?

构造函数:是一种特殊的函数,用于初始化对象,即为对象成员赋初始值。

  • 常将对象中一些相同的属性和方法抽象出来封装到这个函数里。
2.为什么需要构造函数?

因为每个对象中的属性值都有差异,如:每个人不同的姓名、年龄

而每次创新不同对象,都需要重复定义大体结构相同的对象,太费时间。因此就采用函数的方式重复这些代码,而该函数就是构造函数。

3.创建构造函数

(1)构造函数的函数名首字母开头大写

(2)构造函数不需要return即可返回结果

(3)调用构造函数返回的是一个对象

(4)方法内每条语句结尾都需要加分号

(5)属性和方法前必须+this,表示为构造方法中的属性和方法

//1.声明并赋值构造函数
function 构造函数名(形参1,形参2){
   this.属性 = 值;
   this.方法 =function(对象中方法的形参1,对象中方法的形参2){
       //方法体
   };
}
  • 示例:
function Person(name,age,sex){
 this.name = name;
 this.age = age;
 this.sex = sex;
 this.sayHi = function(hua){
     alert(hua);
 };
}
5.调用构造函数
  • 调用构造函数生成的对象名.属性名;
  • 调用构造函数生成的对象名.方法名(传入对象方法的实参1,传入对象方法的实参2);
//2.调用函数将结果返回给一个变量,无需return就可返回
//返回的是对象类型哦!
var 变量名 = new 构造函数名(实参1,实参2);
生成的对象变量名.属性名;
生成的对象变量名.方法名(传参数);

示例:

 function Person(name,age,sex){
 	 this.name = name;
     this.age = age;
     this.sex = sex;
     this.sayHi = function(hua){
         alert(hua);
     }
}	
var res = new Person();
res.sayHi('你好哇!');
6.示例
//1.声明并创建构造函数
function Star(name,age,sex){
   //①为属性赋值
   this.name = name;
   this.age = age;
   this.sex =sex;
   //②定义构造方法
   this.sing = function(sang){
       alert(sang);
   }
}
//2.调用构造函数
var ldh = new Star('刘德华',18,'男');
alert(ldh.name);//输出ldh对象中的name属性
ldh.sing(‘忘情水’)//调用ldh对象中的sing方法,同时传入参数sang='忘情水'

1677762263124

十九、构造函数和对象的区别

1️⃣构造函数--抽象了对象的公共部分,封装到了函数中,表示泛指的类;如:明星,宠物

--同java的类

2️⃣对象--表示某一个具体人/物,通过new关键字创建对象,称为实例化;如:刘德华,田园猫

--同java对象

1.实例化是什么?

通过new关键字创建对象,就叫实例化。

注意js中构造函数等同于java的类
2.new关键字

**new 构造函数 ( 实参 )**的执行过程:

①先在内存中创建了一个空的对象

②而this就会指向刚才的创建的空对象

③执行构造函数里面的代码,给空对象添加属性和方法

④返回该对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

邓六日

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值