JS如何创建对象
var car = {
year:1980,
color:"red",
passengers:4,
mileage:1024,
model:"CC car",
make:"China",
"car number":"8888888"
};
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
上面定义了一个包含一系列属性的对象,并将其赋给了变量car。我们就可以通过变量 car去访问和修改这个对象的属性。
注意事项:
1.属性与值之间用冒号“:”隔开。
2.属性与属性之间用逗号“,”隔开。
3.如果属性名有空格,一定要用双引号将其括起来,如上例,否则,一般不需要用双引号,获取属性值有数组下标法、dot:
car["car number"];
car.model;
- 1
- 2
4.最后一个属性值后面不需要加逗号。
5.不能含有同名属性。
6.可以随时增加属性,如car.brand=“bao ma”
7.可以随时删除属性,如delete car.color;delete成功,则返回true,否则返回false。
8.建立空对象,如 var wahaha ={};
9.访问对象的属性值用“."点。
10.这个car变量是这个对象的引用。所以将这个变量传递给函数的形参或赋给其他变量时,它们都是指向同一个对象。这一点与实参不一样,实参是按值传递的。
是时候给我们的对象添加行为了
var car = { year:1980, color:"red", passengers:4, mileage:1024, model:"CC car", make:"China", "car number":"88888", started:false, start:function(){ this.started = true; }, stop:function(){ this.started = false; }, drive:function(){ alert("OK Boss,Let's Go!"); }, call:function(name){ alert("hello,"+name+". Where do you want to go?"); } };
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
使用方法来修改属性是另一种封装方式,它让对象决定如何完成工作。通常可以达到改善代码的可维护性和可扩展性的目的。
注意:
1.上面这个对象里面有两个方法是修改对象属性值的,但是在函数里要使用对象的属性,必须带上this,否则会修改不成功。this会告诉javascript解释器,这个不是全局变量,而是当前对象的属性。
2.对象调用方法,也是用“."点来调用。
3.可以将函数视为值。
4.能够创建类模板,用于生成统一的对象。
最后给出一个运行实例:
<!doctype html>
<html lang="en"> <head> <meta charset="utf-8"> <title>My First JavaScript</title> </head> <body> <script> var car = { year:1980, color:"red", passengers:4, mileage:1024, model:"CC car", make:"China", "car number":"88888", started:false, start:function(){ this.started = true; }, stop:function(){ this.started = false; }, drive:function(){ alert("OK Boss,Let's Go!"); }, call:function(name){ alert("hello,"+name+". Where do you want to go?"); } }; car.start(); alert(car.started); car.drive(); car.call("Tom"); alert(car["car number"]); car.brand = "bao ma"; alert(car.brand); delete car.model; alert(car.model); function changeCar(micar){ car.color = "blue"; } changeCar(car); alert(car.color); </script> </body>
</html>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
谢谢阅读。
文章来源: blog.csdn.net,作者:WongKyunban,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/weixin_40763897/article/details/87977656
- 点赞
- 收藏
- 关注作者
评论(0)