老生常谈JavaScript数组的用法


Posted in Javascript onJune 10, 2016

JavaScript数组简介

JavaScript中的数组与其他语言中的数组是不同的,主要体现在:

数组中存储的各项可以是不同类型的数据

数组的大小是动态变化的,当新增项时或移除项时可以动态的改变大小来容纳当前数据项

在JavaScript中创建数组

在JavaScript中创建数组有两种方式:

其一:调用数组的构造函数

var a = new Array(3);//创建一个长度为3的数组

var a = new Array(1,2,3)//创建一个数组内容为1,2,3的数组

另外,通过构造函数创建数组时也可以省略new 关键字,效果与带new相同

其二:使用字面值法创建(使用这种方法创建数组不会调用数组的构造方法)

Var a = [1,2,3]

判断一个对象是否为数组

在JavaScript中判断一个对象是否是数组有两种方法:

老生常谈JavaScript数组的用法

JavaScript数组的属性与方法

Length属性

在JavaScript中数组的length属性返回数组的长度,该属性既可以读亦可以写

length-i: 将数组从后往前删除i个元素

length+i: 在数组的尾部增加i个元素(未初始化前均为underfine)

栈方法

Push方法:

老生常谈JavaScript数组的用法

Pop方法:

数组非Pop方法返回数组中的最后一项(注意:只是返回最后一项而不影响原数组)

老生常谈JavaScript数组的用法

队列方法

Shift方法: 移除数组的第一项并返回,同时使数组的长度减1

老生常谈JavaScript数组的用法

结合使用push()和 shift()方法,便可以像队列一样的操作数组

Unshift方法:在数组的前端添加任意个项并返回数组的长度

老生常谈JavaScript数组的用法

结合使用unshift()和pop()方法可以像操作反向队列似得操作数组

数组的排序方法

Sort方法对数组进行排序(按照ASCII码表)

老生常谈JavaScript数组的用法

此外还可以为sort()还可以指定一个比较函数

老生常谈JavaScript数组的用法

倒序排列函数reverse():

老生常谈JavaScript数组的用法

不调用reverse,手动实现倒序排列:

老生常谈JavaScript数组的用法

操作方法

concat()方法:如果没有参数则返回当前数组的副本,如果参数是一个数组,则将参数数组中的每一项都添加到当前数组副本的末尾,然后返回该副本,如果参数不是数组,则将参数添加到当前数组副本的末尾并返回该副本

老生常谈JavaScript数组的用法

slice()方法:将当前数组中的一项或多项作为一个新数组返回(不影响当前原数组)

老生常谈JavaScript数组的用法

splice()方法:(注意:该方法在原数组操作)

老生常谈JavaScript数组的用法

位置方法indexof()和lastindexof()

Indexof(startindex,item):在当前数组中startindex(如果没有startindex则从头开始搜索)从前往后搜素item,并返回第一个item的索引,如果没有查询到item则返回-1

Lastindexof(startindex,item):用法同indexof,但是从后往前搜索

减少方法

reduce和reduceright:

reduce(callback,缩小基础的初始值(可选)),回调函数可以接受四个参数(pre,cur,index,arr),分别表示前一个值、当前值、项索引,数组对象,这个函数的返回结果自动作为参数传递给下一项

reduceright()用法同reduece,但reduceright是从后往前迭代的

老生常谈JavaScript数组的用法

迭代方法

老生常谈JavaScript数组的用法

以上这篇老生常谈JavaScript数组的用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
简单三步,搞掂内存泄漏
Mar 10 Javascript
jquery.ui.draggable中文文档
Nov 24 Javascript
jQuery 源码分析笔记(6) jQuery.data
Jun 08 Javascript
为Javascript中的String对象添加去除左右空格的方法(示例代码)
Nov 30 Javascript
jquery使用animate方法实现控制元素移动
Mar 27 Javascript
vue-cli+webpack记事本项目创建
Apr 01 Javascript
ztree简介_动力节点Java学院整理
Jul 19 Javascript
javascript 取小数点后几位几种方法总结
Aug 02 Javascript
微信小程序收货地址API兼容低版本解决方法
May 18 Javascript
Vue2.x通用编辑组件的封装及应用详解
May 28 Javascript
JS使用正则表达式提交页面验证的代码
Oct 16 Javascript
Element Rate 评分的使用方法
Jul 27 Javascript
jquery输入数字随机抽奖特效的简单实现代码
Jun 10 #Javascript
jQuery学习心得总结(必看篇)
Jun 10 #Javascript
修改js confirm alert 提示框文字的简单实例
Jun 10 #Javascript
由简入繁实现Jquery树状结构的方法(推荐)
Jun 10 #Javascript
3kb jQuery代码搞定各种树形选择的实现方法
Jun 10 #Javascript
关于网页中的无缝滚动的js代码
Jun 09 #Javascript
Document.body.scrollTop的值总为零的快速解决办法
Jun 09 #Javascript
You might like
PHP处理excel cvs表格的方法实例介绍
2013/05/13 PHP
PHP独立Session数据库存储操作类分享
2014/06/11 PHP
ThinkPHP自动填充实现无限级分类的方法
2014/08/22 PHP
php往mysql中批量插入数据实例教程
2018/12/12 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
2019/10/03 PHP
js 鼠标点击事件及其它捕获
2009/06/04 Javascript
document.getElementById方法在Firefox与IE中的区别
2010/05/18 Javascript
JavaScript的document对象和window对象详解
2010/12/30 Javascript
JavaScript计算字符串中每个字符出现次数的小例子
2013/07/02 Javascript
JavaScript参数个数可变的函数举例说明
2014/10/10 Javascript
用javascript实现自动输出网页文本
2015/07/30 Javascript
js精准的倒计时函数分享
2016/06/29 Javascript
jQuery实现div横向拖拽排序的简单实例
2016/07/13 Javascript
JS只能输入正整数的简单实例
2016/10/07 Javascript
Bootstrap源码解读表单(2)
2016/12/22 Javascript
JS实现判断图片是否加载完成的方法分析
2018/07/31 Javascript
详解vue项目中使用token的身份验证的简单实践
2019/03/08 Javascript
Javascript模块化机制实现原理详解
2020/04/02 Javascript
Python 文件和输入输出小结
2013/10/09 Python
改进Django中的表单的简单方法
2015/07/17 Python
Python做简单的字符串匹配详解
2017/03/21 Python
在Python程序员面试中被问的最多的10道题
2017/12/05 Python
Python OpenCV处理图像之图像直方图和反向投影
2018/07/10 Python
新年快乐! python实现绚烂的烟花绽放效果
2019/01/30 Python
Python3之不使用第三方变量,实现交换两个变量的值
2019/06/26 Python
如何使用django的MTV开发模式返回一个网页
2019/07/22 Python
python 中值滤波,椒盐去噪,图片增强实例
2019/12/18 Python
Python和Anaconda和Pycharm安装教程图文详解
2020/02/04 Python
使用wxpy实现自动发送微信消息功能
2020/02/28 Python
如何在django中运行scrapy框架
2020/04/22 Python
深入解析HTML5的IndexedDB索引数据库
2015/09/14 HTML / CSS
小学生迎国庆演讲稿
2014/09/05 职场文书
钳工实训报告总结
2014/11/04 职场文书
博士导师推荐信
2015/03/25 职场文书
升学宴来宾致辞
2015/07/27 职场文书
用Python编写简单的gRPC服务的详细过程
2021/07/04 Python