JS自定义对象

2020-06-22  本文已影响0人  社会主义顶梁鹿

在JavaScript中,对象是一组无序的相关属性和方法的集合,所有的事物都是对象,例如字符串、数值、数组、函数等。

对象是由属性和方法组成的。

属性:事物的特征,在对象中用属性来表示(常用名词表示)

方法:事物的行为,在对象中用方法来表示 (常用动词表示)

一、创建对象的三种方法

1、利用字面量创建对象

对象字面量就是花括号{} 包含对象的属性和方法。

var obj={};

var obj={

        username : '张三',

        sayHi : function(){执行代码};

};

(1)里面的属性方法使用键值对的形式

(2)多个属性方法中间用逗号,隔开

(3)方法冒号后面跟的是一个匿名函数

使用对象

(1)调用对象的属性采用的是    对象名.属性名

(2)另一种方法是    对象名['属性名']

(3)调用对象的方法采用的是    对象名.方法名()

2、利用new Object 创建对象

var obj = new Object;

var obj = new Object;

obj.username = '张三';

obj.sayHi = function(){执行代码}

(1)利用了等号赋值的方法添加对象的属性和方法

(2)每个属性和方法之间用分号结束

3、利用构造函数创建对象

之前一次只能创建一个对象,里面包含了很多的重复的属性和方法,因此我们利用函数的方法,重复这些相同的代码,这个函数称之为构造函数。这个函数里面封装的不是方法,而是对象。

function 构造函数名(){

    this.属性 = 值;

    this.方法 = function(){执行代码}

}

new 构造函数名();

function Star(username, age){

        this.name = username;

        this.age = age;

        this.sing = function(sang){ console.log(sang) }

}

var ldh = new Star('刘德华',30)    //调用函数返回一个对象

ldh.sing('冰雨')

(1)构造函数名字首字母要大写

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

(3)调用构造函数必须使用new

(4)只要使用new 构造函数名()调用构造函数就创建一个对象

(5)构造函数里面的属性和方法前面必须添加this

二、构造函数与对象的区别

1、构造函数与对象的区别相当于“明星”和“刘德华”,一类与一个的区别。

2、构造函数创建对象的过程也称之为对象实例化

三、new关键字执行过程

1、new 构造函数可以在内存中创建一个空的对象

2、this就会指向刚才创建的空对象

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

4、返回这个对象

四、遍历对象

for...in...   可以对数组和对象进行遍历循环

var obj = {

        name = '张三',

        age = 20

}

for (var k in obj){

        console.log(k);            //k变量输出得到的是属性名

        console.log(obj[k]);    //obj[k]得到的是属性值

}

for循环里面的变量我们喜欢写k或者key

上一篇 下一篇

猜你喜欢

热点阅读