1. 理解对象
创建自定义对象:(创建一个object的实例,然后在为它添加3个属性和1个方法)
1. 第一种方法{早期使用的多}
var person=new Object();
person.name="Micholas";
person.age=13;
person.job="assdfj sf";
person.sayName=function(){
alert(this.name)
}
2. 第二种方法:对象字面量
var person={
name="lishi"
age=23;
job="soft ware;
sayName:function(){
alert(this.name)
}
}
1-1 属性类型
ECMA-262 的第五版在定义只有内部才用的特性时,描述了属性的各种特性
EXMAScript 中有两种属性:数据属性和访问器属性
1.数据属性
数据属性包含一个数据值的位置。在这个位置可以读取和写入值
[[Configurale]] 表示能否通过delete删除属性从而重新定义属性,能够修改属性的特性。或者能否把属性
修改为访问器属性
[[Enumerable]] 表示能否通过for-in 循环返回属性
[[Writable]] 表示能否修改属性的值
[[Value]] 包含这个属性的数据值
引用类型的值是是一个对象,他保存在堆内存里面
<script>
/* Array,Object,Function */
/* 引用类型
它会占据两块内存空间
*/
/*
1.引用类型的值是一个对象,它保存在堆内存中
2. 包含引用的类型的值的变量不是实际对象本身,它是一个指针,指向实际对象
3.在赋值运算中,复制的其实是指针,因此两个变量最终都指向同一个对象。
*/
var arr=[1,2,3,4];
obj = arr;
obj.push(5);
console.log(arr); //1,2,3,4,5
</script>