这里把符合以下条件的对象称为伪数组: 1.具有length属性 2.按索引方式存储数据 3.不具有数组的push.pop等方法 伪数组(类数组):无法直接调用数组方法或期望length属性有什么特殊的行为,不具有数组的push.pop等方法,但仍可以对真正数据遍历方法来遍历它们.典型的是函数document.childNodes之类的,它们返回的NodeList对象都属于伪数组. 可以使用以下函数将伪数组转化为真正的Array对象(兼容问题处理). function makeArray( c )…
javascript对象深拷贝,浅拷贝 ,支持数组 经常看到讨论c#深拷贝,浅拷贝的博客,最近js写的比较多, 所以也来玩玩js的对象拷贝. 下面是维基百科对深浅拷贝的解释: 浅拷贝 One method of copying an object is the shallow copy. In the process of shallow copying A, B will copy all of A's field values. If the field value is a memory…
Array 对象是一个复合类型,用于在单个的变量中存储多个值,每个值类型可以不同. 创建数组对象的方法: new Array(); new Array(size); new Array(element0, element1, ..., elementn); 1. 当索引值为负数时,会将其看作是对象的一个属性,若为非负的数字字符串,则会隐式转换为数字索引: var a= new Array(); a[-1.23]=true; a[1]="pomelo"; a["100"…