前  言

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中关于数组的内容的更多相关文章

  1. js中的数组

    上网查了一下,js中的数组包含的内容还真不少.先给出两个学习的链接: w3school链接:http://www.w3school.com.cn/js/js_obj_array.asp 博客园链接:h ...

  2. js中的数组遍历

    js中的数组遍历是项目中经常用到的,在这里将几种方法做个对比. ! for循环:使用评率最高,也是最基本的一种遍历方式. let arr = ['a','b','c','d','e']; for (l ...

  3. java:JavaScript3(innerHTML,post和get,单选框,多选框,下拉列表值得获取,JS中的数组,JS中的正则)

    1.innerHTML用户登录验证: <!DOCTYPE> <html> <head> <meta charset="UTF-8"> ...

  4. JS中的数组复制问题

    JS中的数组复制问题 前言 首先提到复制,也就是拷贝问题,就必须要明确浅拷贝和深拷贝. 浅拷贝:B由A复制而来,改变B的内容,A也改变 深拷贝:B由A复制而来,改变B的内容,A的内容不会改变 总的来说 ...

  5. JS中Array数组的三大属性用法

    原文:JS中Array数组的三大属性用法 Array数组主要有3大属性,它们分别是length属性.prototype属性和constructor属性. JS操作Array数组的方法及属性 本文总结了 ...

  6. JS中对数组元素进行增删改移

    在js中对数组元素进行增删改移,简单总结了一下方法: 方法 说明 实例 push( ); 在原来数组中的元素最后面添加元素 arr.push("再见58"); unshift( ) ...

  7. 遍历js中的数组

    可以使用js中的for循环,或者forEach方法:也可以使用Ext中的方法遍历js中的数组 代码如下: /** * 遍历数组 */ var arr = ['越南', '新加坡', '美国', '俄罗 ...

  8. JS中实现数组和对象的深拷贝和浅拷贝

    数组的拷贝 > 数组的深拷贝,两层 var arr = [[1,2,3],[4,5,6],[7,8,9]]; var arr2 = []; 循环第一层数组 for(var i=0,len=arr ...

  9. 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.字面量 ...

随机推荐

  1. jquery的2.0.3版本源码系列(5):349-817行,extend添加的工具方法

    expando 生成唯一JQ字符串(内部)noconflict避免冲突isReady DOM是否加载完成(DOMContentLoaded)readyReady

  2. 流畅python学习笔记:第十九章:动态属性和特性

    首先来看一个json文件的读取.书中给出了一个json样例.该json文件有700多K,数据量充足,适合本章的例子.文件的具体内容可以在http://www.oreilly.com/pub/sc/os ...

  3. struts分页实现

  4. Spring框架——事务处理(编程式和声明式)

     一. 事务概述 ●在JavaEE企业级开发的应用领域,为了保证数据的完整性和一致性,必须引入数据库事务的概念,所以事务管理是企业级应用程序开发中必不可少的技术. ●事务就是一组由于逻辑上紧密关联而合 ...

  5. 如何编写更好的SQL查询:终极指南-第二部分

    上一篇文章中,我们学习了 SQL 查询是如何执行的以及在编写 SQL 查询语句时需要注意的地方. 下面,我进一步学习查询方法以及查询优化. 基于集合和程序的方法进行查询 反向模型中隐含的事实是,建立查 ...

  6. jmeter后置处理器 JSON Extractor取多个变量值

    1.需要获取响应数据的请求右键添加-后置处理器-JSON Extractor 2.如果要获取json响应数据多个值时,设置的Variable names (后续引用变量值的变量名设置)与JSON Pa ...

  7. 马士兵讲jsp项目--BBS项目分析笔记

    1 导言 作为一个新手JAVA程序员,我相信很多人和我一样急切的想要寻找项目来做,这里我把马士兵老师讲的JAVA WEB的第一个小项目拿过来给大家分享一下. 首先,对一个项目而言我们先要认识清楚我们要 ...

  8. 互联网世界中的C语言——我的golang学习笔记:1(基础语法快速过)

    前言 学习任何知识都会有一个学习背景 最近,我们团队乃至我司整个云服务,上go的呼声越来越高!新服务已经开始用go开发,部分现有Java版的服务重构为go也只是时间问题而已,故相关技术积累势在必行!在 ...

  9. 慕课网视频破解付费分享-前端开发-Python等

    微信小程序 慕课网   BAT大牛经验总结全面深入解读Android面试   前端JS基础面试技巧   vue2.0+node.js+mongodb全栈打造商城   Vue.js高级实战-开发移动端音 ...

  10. Microsoft Dynamics 365 之 味全食品 项目分享和Customer Engagement新特性分享

    味全食品 Dynamics 365项目: 在企业门户和电子商务等新营销模式频出的今天,零售业需要利用统一的管理平台管理日益庞大的客户及销售数据,整合线上线下的零售业务,从采购.仓储.生产.配送到销售. ...