一、什么是对象?
2、万物皆对象,除了数字,字符,布尔这种绝对值以外的所有部分都是对象,
对象是类的实例化体现,类是对象的抽象体现。
举例:
数字:
字符:
布尔值:
undefined:
null:
NAN:
undefined和null都没有对象,和别人都不相等,console.log(undefined==null);
3、对象是一个个体,他具备自身类的所有属性和方法。
4、我们曾经遇到过的对象:
var arr=new Array()
var date=new Date();
var obj=new Object();
二、
对象的新建,有以下几种方法:
1、var obj={a:1,b:2};
2、构造函数创建法var obj=new Object();
3、根据对象原型创建新的对象(以某个对象作为原型创建出新对象var obj1=Object.create(obj);
接下来对上面三个进行详解:
1、var obj={}
var obj={
属性:属性值,
方法:方法函数
}
花括号在语言中是指代码块的意思,在obj也相当于一个代码块。obj自身在使用中可以完成和丰富各种代码块。
在函数中,有时候需要返回一个对象,这时候,我们通常使用花括号的形式来返回对象
function abc(){
return {
属性:属性值,
方法:方法函数
}
}
2、var obj=new Object();
obj.属性=属性值
obj.方法=方法函数
obj[属性]=属性值
obj[方法]=方法函数
中括号中的属性和方法必须是字符串,如果是变量,该内容必须是字符型变量。
var arr=new Object([])
创建数组,在javascript中数组不是单独的类型,它是由对象扩展出来的,因此,可以使用这种形式来建立数组。
3、Object.create(proto, [ propertiesObject ])
proto对象原型
propertiesObject 一组属性和值,该参数对象不能是 undefined,
另外只有该对象中自身拥有的可枚举的属性才有效,也就是说该对象的原型链上属性是无效的。
该方法可以针对已知对象创建新对象也可以创建一个空对象。
三、原型链
原型链: obj.__proto__
原型:prototype
数组来源于对象
原文:https://www.cnblogs.com/wjsblog/p/12859459.html