前  言

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. Python获取秒级时间戳与毫秒级时间戳

    获取秒级时间戳与毫秒级时间戳 import time import datetime t = time.time() print (t) #原始时间数据 print (int(t)) #秒级时间戳 p ...

  2. winform WebBrowser控件中,cs后台代码执行动态生成的js

    很多文章都是好介绍C# 后台cs和js如何交互,cs调用js方法(js方法必须是页面上存在的,已经定义好的),js调用cs方法, 但如果想用cs里面执行动态生成的js代码,如何实现呢? 思路大致是这样 ...

  3. ASP.NET Core 运行原理解剖[3]:Middleware-请求管道的构成

    在 ASP.NET 中,我们知道,它有一个面向切面的请求管道,有19个主要的事件构成,能够让我们进行灵活的扩展.通常是在 web.config 中通过注册 HttpModule 来实现对请求管道事件监 ...

  4. 【前端】webkit内核浏览器DIV滚动条样式修改和设置

    webkit内核浏览器DIV滚动条样式修改和设置 引言: 最近在做自己的小项目,为了设计出好看的页面费劲了心思,大到页面的整体布局,小到DIV的滚动条都不放过,以下是我通过查阅资料总结的webkit内 ...

  5. Element is not clickable at point error in chrome

    I see this only in Chrome. The full error message reads: "org.openqa.selenium.WebDriverExceptio ...

  6. ASP.NET From表单转实体类

    原由 经常遇到 int Age=Convert.ToInt32(this.txtAge.Text); 这种蛋疼的代码,特写次方法. 之所以抛出异常是希望知道转换失败,格式错误的属性是什么,方便调试. ...

  7. 基于AXI4总线卷积FPGA加速IP核的尝试

    本文先总结不同AXI IP核的实现的方法,性能的对比,性能差异的分析,可能改进的方面.使用的硬件平台是Zedboard. 不同的AXI总线卷积加速模块的概况 这次实现并逐渐优化了三个版本的卷积加速模块 ...

  8. 最近做了一个通达OA的大料:20170905最新版本破解可改单位名称,无限制安装

    最近做了一个通达OA的大料:20170905最新版本破解可改单位名称,无限制安装 用户约七十家,总体不错,修改了两次注册授权文件,完美使用中 可联系麦枫http://www.mfsun.com管理员Q ...

  9. Run Logic

    1.lr_output_message()函数,其作用是将内容输出到Replay Log中: 如果输出整数型内容,应该这样写; int x; x=10; lr_output_message(" ...

  10. 四则运算GUI

    一.题目描述 我们在个人作业1中,用各种语言实现了一个命令行的四则运算小程序.进一步,本次要求把这个程序做成GUI(可以是Windows PC 上的,也可以是Mac.Linux,web,手机上的),成 ...