举例讲解举例讲解JavaScript中关于对象操作的相关知识中关于对象操作的相关知识
从数组到对象从数组到对象
var myarr = ['red','blue','yellow','purple'];
myarr;// ["red","blue","yellow","purple"] myarr[0];//"red"
myarr[3];//"purple'
数组大家都很熟悉吧,我们可以理解为一个Key对应一个Value,而这个Key在数组中,已经默认了(如上述代码,它的key分别
是0,1,2,3 value是red,blue,yellow,purple)。
那么一个对象就可以理解为一个自定义Key的数组。看如下代码
var hero ={
breed: 'Turtle',
occupation:'Ninja'
};
上述代码我们可以了解到:
1.对象的名称叫hero.
2.和数组不同的是用符号'{‘替代了'[‘
3.对象的属性(如breed和occupation)用符号’,’分隔
4.Key和Value的语法是 KEY:VALUE
还有需要注意到是不管属性(也就是key)是放在双引号,单引号,或者是没有引号,他们的结果都是一样的,下面的代码是一
样的
var obj={a:1,b:2};
var obj={'a':1,'b':2};
var obj={"a":1,"b":2};
推荐的写法是不要把属性放在引号中。除非属性的名称是特殊符号,如数字,或者带有空格等等。
本篇很简单,要注意的是,定义数组的符号[] ,而定义对象的符号为{}
元素,属性,方法元素,属性,方法
学习数组的时候,我们可以说数组里包含了元素,当谈到对象的时候,我们可以改变下说法
var animal={
name: 'dog',
run:function(){
alert("running");
}
}
name就是属性(property),run本身是个函数,在这个对象中,我们叫方法(method)。
访问对象的属性访问对象的属性
有两种方式访问对象的属性。
用数组的形式如:animal[‘name’] 用点的方式访问:animal.name
第一种访问方法适合任意情况。但是如果属性是无效的命名的话,如上一节所说的属性命名’1name’或者’my name’这种情况
用点的方式访问就是错误的。这一点要注意。
下面具体看一个对象访问的例子
var book = {
name:'Javascript Fundation',
published:jixie.
author:{
firstname:'nicholas',
lastname:'xia'
}
};
1.获取author对象的firstname属性
book.author.firstname //nicholas