Javascript基础学习(3)_对象和数组

时间:2023-03-09 22:51:09
Javascript基础学习(3)_对象和数组

一、对象是一种无序的属性集合,每个属性都有自己的名字和值。

1.创建对象

花括号内逗号分隔

var person = {

  "Name" : "LiCheng",

  "Age"    : 25

}

2.对象属性

①用对象名.属性名的方式来访问

②属性的枚举,利用for/in循环可以遍历一个对象的所有属性

③检查属性的存在性,利用in运算符可以查看一个属性是否属性一个对象

④删除属性,利用delete运算符可以删除属性,例如 delete person.Name

⑤作为关联数组的对象

属性的另一种访问方式,通过 对象名["属性名"] 这样的方式来访问

3.共通的Object属性和方法。

①constructor属性

它引用了初始化这个对象的构造函数。

例如:

var d = new Date();

d.constructor == Date;         //True

通过它可以对一个对象的类型进行判断。

②toString()方法

③toLocaleString()方法

④hasOwnProperty()方法:如果对象的属性不是继承的属性,那么就会返回true

⑤propertyIsEnumerable()方法:对象的属性不是继承的属性,在for/in循环当中可以进行枚举,就返回true

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

var o = {};

Object.prototype.isPrototypeOf(o);             //true  因为o.constructor == Object

二、数组

数组的方法:

①join()方法

把一个数组的所有元素转换成字符串,然后再把它们连接起来。

②reverse()

将数组元素进行颠倒然后返回

③sort()

在原数组上进行排序,返回排序后的数组

④concat()方法

创建一个数组,包含调用这个方法的数组的所有元素,如果这个函数的参数中有数组,会被展开,但是不会被递归的展开。

例如:

var a = [1,2,3];

a.concat([4,5]);//结果是[1,2,3,4,5]

⑤slice()方法

返回数组的一个片段,子数组,两个参数可以指定开始位置和结束位置,参数可以使负数,负数表示从尾部开始计算的位置。

⑥splice()方法

用途是插入或者删除数组的元素,和delete运算不一样的地方,在于delete只会吧删除的数组元素的位置设置为undefined,并不会进行删除后的节点移动。

Splice()方法会进行数组元素删除后节点的必要移动。Splice()返回的是删除了元素的数组,如果没删除任何元素,将返回一个空数组。和concat()方法不同的是,splice()方法并不会把数组元素进行展开

例如:

var a = [1,2,3];

a.splice(3,1,[4,5]);//结果是[1,2,3,[4,5]]

⑦push()和pop()方法

像栈结构一样进行数组元素的压入和排出

⑧unshift()和shift()方法

与push()和pop()方法类似,但是不同的是它们是在数组的头部进行操作,而且可以一次插入很多个元素,元素的插入是一次性插入的。也就是说插入的各元素相对位置没有变化