在JavaScript中,对象是一组无序的相关属性和方法的集合,所有事物都是对象,例如字符串、数值、数组、函数等。对象是由属性和方法组成。
- 属性:事物的特征,在对象中用属性来表达。(常用名词)
- 方法:事物的行为,在对象中用方法来表达。(常用动词)
JS中的对象表达式结构更清晰,更强大。
2.创建对象的三种方式在JavaScript中,现阶段有三种方式创建对象(object):
- 利用字面量创建对象
- 利用new Object创建对象
- 利用构造函数创建对象
对象字面量:就是花括号{}里包含了表达具体事物(对象)的属性和方法。
2.1.1创建对象: var obj = {
uname: '百炼成仙',
age: 1000000,
sex:'不详',
sayHi: function(){
console.log('hello world');
}
}
console.log(obj.uname);//百炼成仙
console.log(obj['age']);//1000000
- 里面的属性或者方法采用键值对的形式 。 键 属性名: 值 属性值(可以是任何类型)。
- 多个属性或者方法中间用逗号隔开的
- 方法冒号后面跟的是一个匿名函数
(1)调用对象的属性,采取: 对象名.属性名 ‘.’理解4为‘的’
(2)调用对象属性第二种方法:对象名(['属性名'])注意引号
(3)调用对象的方法:对象名.方法名()千万别忘记加括号。
2.2利用new Object创建对象 var obj = new Object();//创建了一个空对象
obj.name = '百炼成仙';
obj.sex = '不详';
obj.age = 10000;
obj.sayHi = function(){
console.log('hello world!');
}
console.log(obj.name);
console.log(obj['sex']);
obj.sayHi();
- 利用 等号 = 赋值的方法 添加方法和属性
- 每个属性和方法之间用分号隔开
构造函数:是一种特殊函数,主要用来初始化对象,及为对象成员赋值,它总与new运算符一起使用。
- 前两种方法一次只能创建一个对象。创建多个有相同属性和方法的对象只能复制。
- 利用函数可以重复这些相同的代码,(构造函数)
- 函数里封装的不是普通代码,而是对象。
- 构造函数就是把对象里面一些相同的属性和方法抽象出来封装到函数里去。
1.语法格式:
function 构造函数名(){
this.属性;
this.方法 = function (){
方法。。。。
}
}
new 构造函数名();
//调用方法和前两种一样
function Star(uname,age,sex){
this.name = uname;
this.age = age;
this.sex = sex;
this.sing = function (sang){
console.log(sang);
}
}
var ldh = new Star('刘德华',18,'男');
console.log(ldh.name);
console.log(ldh['sex']);
ldh.sing('冰雨');
var zxy = new Star('张学友',19,'男');
console.log(zxy.name);
console.log(zxy['sex']);
zxy.sing('李香兰');
- 构造函数名字首字母要大写
- 属性和方法前面必须添加 this
- 构造函数不需要return,就可以返回结果
- 调用构造函数必须使用new
- 只需要用 new 构造函数名() 调用函数就创建了一个对象 对象名{}
- 构造函数,如Star(),抽象了对象的公共部分,封装到了函数里面,它泛指一大类(class)
- 创建对象,如new Star(),特指某一个,是具体的事物,通过new关键字创建对象的过程也称为对象实例化
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)