JS对象和数组

来源:互联网 发布:mac能装wps吗 编辑:程序博客网 时间:2024/05/17 20:34

1、创建数组

创建数组的最简单的方法就是在JavaScript代码中加入一个对象直接量。对象直接量是用逗号分隔开的一对对的属性名和值的列表,包含在一个花括号之中,每个属性名可以是一个JavaScript标识符或一个字符串,而每个属性值可以是一个常量或任意的JavaScript表达式。

new运算符可以创建具体的一类对象。在new的后面跟着调用一个构造函数,它用来初始化对象的属性。

2、作为关联数组的对象

我们可以用运算符“.”来存取一个对象属性,而数组更常用的存取属性运算符是[]。这样,下面的两个表达式值相等:

object.property

object["property"]

这两条语法之间最重要的区别是,前者的属性名是标识符,后者的属性名却是一个字符串。

3、通用的Object属性和方法

JavaScript中的所有对象都继承自Object类。

3.1、constructor属性

在JavaScript中,每个对象都有一个constructor属性,它引用了初始化这个对象的构造函数。

3.2、toString()方法

该方法没有参数,它返回一个某种程度上代表着对象的值的一个字符串,而它正是在这个对象上调用的。当JavaScript需要把一个对象转换为一个字符串的时候它就会调用这个方法。

3.3、toLocaleString()方法

这个方法的作用是返回对象的一个本地化字符串表示。默认的该方法并不会本地化自己,它总是返回和toString()完全相同的内容。

3.4、valueOf()方法

当JavaScript需要把一个对象转换为某种基本数据类型,也就是一个数字而不是一个字符串的时候,才调用的方法如果一个对象用在需要一个基本数值的环境中,JavaScript会自动调用这个方法。

3.5、hasOwnProperty()方法

如果对象用一个单独的字符串参数所指定的名字来本地定义一个非继承的属性,该方法就返回true。否则返回false。

3.6、propertyIsEnumerable()方法

如果对象用一个单独的字符串参数所指定的名字来定义一个非继承的属性,并如果这个属性可以在一个for/in循环中枚举,propertyIsEnumerable()方法就返回true。否则返回false.

3.7、isPrototypeOf()方法

如果该方法所属的对象是参数的原型对象,那么,该方法就返回true。否则返回false。

4、数组

创建一个数组的最简单的方法就是使用数组直接量,这只是位于方括号中的以逗号分割开的数组元素的列表。一个数组直接量中的值不一定要求是常数,它们可以是任意的表达式;数组直接量可以包含对象直接量或者其他的数组直接量。

创建数组的另一个方式是使用Array()构造函数:无参数调用;可以显式地指定数组前n个元素的值;可以传递给它一个数字参数,这个数字指定了数组的长度。

4.1、删除数组元素

delete运算符吧一个数组元素设置为undefined值,但是元素本身还继续存在。要真正地删除一个元素,以使下标位置高于它的所有元素都向下迁移到较低的下标位置,那么必须使用一个数组方法。Array.shift()方法删除数组的第一个元素,Array.pop()方法删除最后一个元素,Array.splice()从一个数组中删除一个连续范围内的元素。

5、数组的方法

5.1、join()方法

该方法可以吧一个数组的所有元素都转换成字符串,然后再把它们连接起来。可以指定一个可选的字符串来分隔结果字符串中的元素。如果没有指定分隔字符串,就使用逗号分隔元素。

5.2、reverse()方法

该方法将颠倒数组元素的顺序并返回颠倒后的数组。它在元数组上执行这一操作,也就是说,它并不是创建一个重排元素的新数组,而是在已经存在的数组中对数组元素进行重排。

5.3、sort()方法

该方法是在原数组上对数组元素进行排序,返回排序后的数组。如果调用时不给它参数,那么它将按照字母顺序对数组元素进行排序。

5.4、concat()方法

该方法能创建并返回一个数组,这个数组包含了调用concat()的原始数组的元素,其后跟随的是concat()的参数。如果其中有些参数是数组,那么它将被展开,其元素将被添加到返回的数组中。注意:该函数并不能递归地展开一个元素为数组的数组。

5.5、slice()方法

该方法返回的是指定数组的一个片段,或者说是子数组。它的两个参数指定了要返回的片段的起止点。返回的数组包含由第一个参数指定的元素和从那个元素开始到第二个参数指定的元素为止的元素,但是并不包含第二个参数所指定的元素。

5.6、splice()方法

该方法是插入或删除数组元素的通用方法。它在原数组上修改数组,并不创建新数组。

5.7、push()方法和pop()方法

这两个方法使我们可以像使用栈那样来使用数组。

5.8、unshift()方法和shift()方法

这两个方法的行为和push()和pop()非常相似,只不过它们是在数组的头部进行元素的插入和删除,而不是在尾部进行插入和删除。

5.9、toString()方法和toLocaleString()方法

toString()方法可以将数组的每个元素都转换成一个字符串。

toLocaleString()是toString()方法局部化的版本。它将调用每个元素的toLocaleString()方法把数组元素转换成字符串,然后把生成的字符串用局部特定的分隔符字符串连接起来。

原创粉丝点击