JS中关于数组的内容
前 言
LIUWE
在网站制作过程中,数组可以说是起着举足轻重的地位。今天就给大家介绍一下数组的一些相关内容。例如:如何声明一个数组和在网站制作过程中我们常用的一些数组的方法。介绍的不好还请多多包涵。。。
首先我们应该先了解一下什么是数组,数组的基本概念是什么?
1、定义:数组是在内存空间中连续存储的一组有序数据的集合。
2、元素在数组的顺序为下标,可以使用下标访问数组的每一个元素。
| 一、如何声明一个数组? |
1、使用字面量声明:
var arr=[]; //声明了一个空的数组
2、使用new关键字声明:
var arr=new Array(1,2,3,4,5,6,7,8); //使用new关键字声明了一个数组
3、数组中参数应该注意的事项:
(1)、同一个数组中,可以存储各种数据类型。
var arr=[1,"liu",true,{},null,function]; //次数组中的数据类型有数值型,boolean类型,对象,函数等。
(2)、数组中的参数是可以省略的,省略之后表示创建了一个空数组
(3)、当数组中的参数固定之后,表示创建了一个长度为指定长度的数组,但这个长度是可变可追加的。
| 二、数组中常用的一些方法 |
1、join("分隔符号"); 表示将数组用指定分隔符连接为字符串,当参数为空时,默认用逗号分隔
2、concat(); 表示将多个数组进行连接,形成一个新的数组,原数组将不会发生变化。要注意的是:concat连接时如果有二维数组,至多能拆一层中括号
[1,2].concat([3,4],[5,6]); //其显示结果为 [1,2,3,4,5,6]
[1,2].concat([3,4,[5,6]]); //其结果显示为 [1,2,3,4,[5,6]]
3、arr.push(值); 表示在数组的最后一个位置新增一个值。 arr.pop();删除数组的最后一个值。
4、arr.unshift(值); 表示在数组的第0个位置新增一个值。 arr.shift();删除数组的第一个值。
5、reverse(); 表示将数组反转,倒序输出,原数组会发生改变。
6、slice(begin,end); 表示截取数组中的某一部分,并返回截取的新数组,原数组不会被改变。其要注意的是:接收两个参数
(1)、传入一个参数,表示的是开始区间,默认截取到数组的结尾。
(2)、传入两个参数,表示截取开始和结束的下标。是一个左闭右开的区间(即包含begin不包含end)。
(3)、两个参数可以为负数,表示从右边开始截取。但是注意右边开始的第一个数为-1.
7、sort(); 将数组进行升序排列(即从小到大排列),原数组将被改变。
(1)、默认情况下,会按照每个元素首字母的ASCII值进行排列。
(2)、还可以传入一个函数,手动指定排序的函数算法,函数将默认接收两个值a,b,如果函数返回值大于0,则证明a>b;如果函数返回值大于0,则证明a<b;
arr.sort(function(a,b){
return a-b; // 升序排列
return b-a; // 降序排列
});
8、indexOf(value,index); 返回数组中第一个value值所在的下标,如果没有返回-1;lastIndexOf(value,index); 返回数组中最后一个value值所在的下标,如果没有返回-1。
(1)、如果没有指定index,则表示全数组查找value
(2)、如果指定了index,则表示从index开始,向后查找。
9、forEach(); 专门用于循环遍历数组,接收一个回调函数,回调函数接收两个参数,第一个参数为数组每一项的值,第二个参数为数组每一项的下标。要注意的是:IE8之前不支持此函数。
arr.forEach(function(a,b){
});
10、map(); 数组映射,使用方式与forEach()相同,不同的是,map可以有return返回值,表示将原数组的每个值进行操作后返回一个新的数组。要注意的是:IE8之前不支持此函数。
var arr1=arr.map(function(a,b){
console.log(a);
return a+2;
});
我的代码世界
关于数组的相关内容就介绍到这里,毕竟是一个初入程序员世界的毛头小子,有什么说错的地方还望各位大牛能够给指出,博客还会持续更新,希望对大家有一点点帮助吧!!!!
JS中关于数组的内容的更多相关文章
- js中的数组
上网查了一下,js中的数组包含的内容还真不少.先给出两个学习的链接: w3school链接:http://www.w3school.com.cn/js/js_obj_array.asp 博客园链接:h ...
- js中的数组遍历
js中的数组遍历是项目中经常用到的,在这里将几种方法做个对比. ! for循环:使用评率最高,也是最基本的一种遍历方式. let arr = ['a','b','c','d','e']; for (l ...
- java:JavaScript3(innerHTML,post和get,单选框,多选框,下拉列表值得获取,JS中的数组,JS中的正则)
1.innerHTML用户登录验证: <!DOCTYPE> <html> <head> <meta charset="UTF-8"> ...
- JS中的数组复制问题
JS中的数组复制问题 前言 首先提到复制,也就是拷贝问题,就必须要明确浅拷贝和深拷贝. 浅拷贝:B由A复制而来,改变B的内容,A也改变 深拷贝:B由A复制而来,改变B的内容,A的内容不会改变 总的来说 ...
- JS中Array数组的三大属性用法
原文:JS中Array数组的三大属性用法 Array数组主要有3大属性,它们分别是length属性.prototype属性和constructor属性. JS操作Array数组的方法及属性 本文总结了 ...
- JS中对数组元素进行增删改移
在js中对数组元素进行增删改移,简单总结了一下方法: 方法 说明 实例 push( ); 在原来数组中的元素最后面添加元素 arr.push("再见58"); unshift( ) ...
- 遍历js中的数组
可以使用js中的for循环,或者forEach方法:也可以使用Ext中的方法遍历js中的数组 代码如下: /** * 遍历数组 */ var arr = ['越南', '新加坡', '美国', '俄罗 ...
- JS中实现数组和对象的深拷贝和浅拷贝
数组的拷贝 > 数组的深拷贝,两层 var arr = [[1,2,3],[4,5,6],[7,8,9]]; var arr2 = []; 循环第一层数组 for(var i=0,len=arr ...
- JavaScript基础&实战(5)js中的数组、forEach遍历、Date对象、Math、String对象
文章目录 1.工厂方法创建对象 1.1 代码块 1.2.测试结果 2.原型对象 2.1 代码 2.2 测试结果 3.toString 3.1 代码 3.2 测试结果 4.数组 4.1 代码 5.字面量 ...
随机推荐
- IT科技企业逻辑思维面试题
逻辑思维面试题 一.假设有一个池塘,里面有无穷多的水.现有2个空水壶,容积分别为5升和6升.问题是如何只用这2个水壶从池塘里取得3升的水.[请描述操作过程] 答:(1)先用容积为6升的水壶装满水: ( ...
- mySQl数据库的学习笔记
mySQl数据库的学习笔记... ------------------ Dos命令--先在记事本中写.然后再粘贴到Dos中去 -------------------------------- mySQ ...
- ASP.NET Core开发期间部署到IIS自定义主机域名并附加进程调试
在.NET Framework环境下,我们经常会这么做 把一个web项目不经过发布直接部署到IIS里去,配置上主机名,修改一下hosts文件,就可以用自定义的域名来访问我们的应用程序,使用附加到进程( ...
- Android的47个小知识
1.判断sd卡是否存在 boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environme ...
- 框架整合——Spring与MyBatis框架整合
Spring整合MyBatis 1. 整合 Spring [整合目标:在spring的配置文件中配置SqlSessionFactory以及让mybatis用上spring的声明式事务] 1). 加入 ...
- jmeter系列-------脚本编写格式
1.通常会将用户和服务器的一次交互(页面访问或者提交)请求放在一个简单控制器或者事务控制器,例如微课首页里面包含4个接口都放到简单控制器里 或者一个提交可能,会触发3个接口,那么这3个接口放到一个简单 ...
- html5 响应式布局(媒体查询)
响应式布局 响应式布局,简而言之,就是一个网站能够兼容多个终端--而不是为每个终端做一个特定的版本.这个概念是为解决移动互联网浏览而诞生的. 响应式布局可以为不同终端的用户 ...
- NHibernate教程(8)--巧用组件
本节内容 引入 方案1:直接添加 方案2:巧用组件 实例分析 结语 引入 通过前面7篇的学习,有点乏味了~~~这篇来学习一个技巧,大家一起想想如果我要在Customer类中实现一个Fullname属性 ...
- ps中如何让图层在画布内水平居中
下图每个小logo图案距离它们的上参考线的距离均为10px,而我们如何让图层在画布内水平居中??? 如上图中三个图层的图案是用来给Html/Css中的background属性使用的,虽然可以通过鼠标拖 ...
- 201521123100 《Java程序设计》第4周学习总结
1. 本章学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. (1)多态性:相同的形态,不同的行为 (2)类型转换与强制类型转换(cast) 2. 书面作 ...