对象,简单的理解就是,除了单身旺,都有对象。非常装13的理解就是,万物皆为对象。
在 JavaScript 里面,跟 C/C++ 实现对象的方式有点不一样。
举一个小栗子
举个栗子JavaScript 中的对象,在实例化之后,还能继续添加属性,例如这样:
var obj = {
hello : function () {
console.log('hello world!');
}
}
//直接添加属性
obj.name = 'obj';
obj.helloWithWords = function (str) {
console.log(str);
}
obj.hello();
//运行添加的属性
obj.helloWithWords('my name is ' + obj.name);
运行结果:
hello world!
my name is obj
看了上面的例子,我们就来研究一下这个 JavaScript 对象这个 对象。
JavaScript 中的对象是一个名称与值配对的集合.这种名称与值的配对被称为属性.如此看来,JavaScript 对象可以定义为属性的集合。
JavaScript 可以非常方便的添加属性,但是访问其没有的属性,其值是 undefined 而不是 null,这是需要注意的地方。
对象的创建
在 JavaScript 里有以下几种方式来创建一个对象。
使用对象初始化器
var obj = {
name : value_1,
1 : value_2,
"name" : value_3
}
使用构造函数
function Obj(pro1, pro2, pro3){
this.pro1 = pro1;
this.pro2 = pro2;
this.pro3 = pro3;
}
var myObj = new Obj(1,2,3);
使用 Object.create 方法
var obj = {
name : value_1,
1 : value_2,
"name" : value_3
}
var myObj = Object.create(obj );
使用 class 关键字
class Obj {
constructor(pro1, pro2) {
this.pro1= pro1;
this.pro2= pro2;
}
function1() {
return "this is a function";
}
}
对象的使用
可以使用 [] 来访问,也可以使用 . 来访问。
obj.por1 = "pro1";
obj["pro1"] = "pro1";
Tips
- JavaScript 所有对象均为实例
- JavaScript 可以动态添加属性
网友评论