美文网首页
学习JS笔记(第五章-数组)

学习JS笔记(第五章-数组)

作者: 这很重要吗 | 来源:发表于2017-04-25 19:42 被阅读0次

数组概述##

创建数组##

字面量###

数组大小0~232-1,超过232-1则报错

用Array构造器创建数组###

一个参数表示数组长度,多个参数表示数组元素,红色new可以被省略

delete删除数组时,数组长度不变,但是被删除元素变为undefined

数组元素增删##

动态的,无需指定大小, 通过delete和直接把元素赋值为undefined之后,前者和后者的2 in arr的结果是不同的

数组迭代##

for循环for(i in arr),数组也是对象,有原型Arry.prototype

数组迭代

二维数组##

遍历二维数组

稀疏数组##

稀疏数组并不含有从0开始的连续索引。一般length属性值比实际元素个数要多。不连续的索引返回undefined遍历时,用in操作符或者判断数组元素是否为undefined来判断

稀疏数组

数组方法##

数组对象的原型Arry.prototype提供了大量的方法对数组进行操作

数组方法

join-将数组转为字符串###

使用join方法来构造重复的字符串

join方法的妙用

reverse-将数组逆序###

原数组被修改

reverse方法

sort-排序###

默认按照字母排序,原数组被修改

默认将数字转为字符串之后按照字母顺序排序
sort方法

concat-合并数组###

原数组未修改,参数可以是数组,数组会被拉平,但只会拉平一次

数组合并

slice-返回部分数组###

左闭右开,参数为负数时,-1表示最后一个元素,原数组不会修改

slice方法

splice-数组拼接###

可以删除数组中的元素,也可以拼接新的元素,原数组被修改

splice方法

forEach-数组遍历###

3个参数:具体元素的值,索引,指向数组本身,属于es5的新特性

var arr1 = [1,2,3,4,5];
        arr1.forEach(function (x,index,a) {
            console.log(x+'|'+index+'|'+(a===arr1));
        }) //  只适用于IE9以上的浏览器。
forEach方法

map-数组映射###

原数组未被修改

map方法

filter-数组过滤###

原数组未被修改

filter方法

every,sum-对数组的判断###

every&some方法

reduce,reduceRight###

把数组元素两两进行操作,最后聚合成一个唯一的结果

reduce方法

indexOf,lastIndexOf数组检索###

lastIndexOf从右向左开始查找

indexOf方法

Array.isArray-判断对象是否为数组###

es5

Array.isArray([]); //true
判断是否是数组

总结##

数组与一般对象###

Array.prototype的原型是Object.prototype
相同点: 都可以继承 数组是对象 对象不一定是数组 都可以当做对象添加删除属性
不同点:数组自动更新length 按索引访问数组常常比访问一般对象属性明显迅速 数组对象继承Array.prototype上的大量数组操作方法。

字符串与数组###

字符串是类数组的,可以按照数组的索引去访问每个字符,也有length属性,但是没有数组中的一些操作方法,字符串可以通过如下的方式使用

Array.prototype.join.call(str,"-");
字符串使用数组的join方法

相关文章

  • 学习JS笔记(第五章-数组)

    数组概述## 创建数组## 字面量### 数组大小0~232-1,超过232-1则报错 用Array构造器创建数组...

  • JS数组(学习笔记)

    数组是数据的有序列表。数组中的每一项可以保存任何类型的数据(字符串、数值、对象,etc)数组的长度是可以动态调整的...

  • JS数组学习笔记

    2

  • JS学习笔记_数组篇

    (一)操作方法 push: 从数组末尾添加项,返回数组长度unshift : 从数组头添加项,返回数组长度pop...

  • js将一个对象转换成数组对象

    笔记 //js将一个对象转换成数组对象

  • JS复习笔记--Array

    JS复习笔记--Array 创建一个数组的方式 通过索引 (访问/添加) 数组元素 修改数组 arr.push()...

  • 2020-11-04

    JS 对象分类 这两天在学习数组,把对象分类的笔记总结给忘了(实际上就是数组学的不太理想,需要转换一下思维),那我...

  • JavaScript学习笔记(二)

    慕课网JavaScript进阶篇第1-6章学习笔记,JS基础语法,数组,流程控制语句,函数,事件 JavaScri...

  • 原生js学习笔记3——数组

    定义数组 两种方式定义一个数组: var array1 = new array(1, 2, 3, 4); var ...

  • JS学习笔记之数组操作

    shift() 删除原数组第一项,并返回删除元素的值;如果数组为空则返回undefined。 unshift() ...

网友评论

      本文标题:学习JS笔记(第五章-数组)

      本文链接:https://www.haomeiwen.com/subject/xnmvzttx.html