我们在日常开发过程中,使用到原生 JavaScript的时候,有时候会频繁的对数组进行操作,今天我把工作以来,经常用到的有关 JavaScript数组的方法总结一下,方便日后工作的时候查找使用!

一、数组转字符串

           需要将数组元素用某个字符连接成字符串。

 var a=[1,2,3,4,5,6];
var b=a.join(',');
console.log(b);
结果: 1,2,3,4,5,6

二、字符串转数组

实现方法为将字符串按某个字符切割成若干个字符串,并以数组形式返回          

var a = "abc,abcd,aaa";
var b= a.split(",");// 在每个逗号(,)处进行分解。
console.log(b);
结果: ["abc", "abcd", "aaa"]

   

    三、数组去重

Array.prototype.duplicateRemoval = function () {
var n = []; //一个新的临时数组
for (var i = 0; i < this.length; i++) //遍历当前数组
{
//如果当前数组的第i已经保存进了临时数组,那么跳过,
//否则把当前项push到临时数组里面
if (n.indexOf(this[i]) == -1) n.push(this[i]);
}
return n;
}
var a=[1,1,2,2,3,4,5,5,7,7];
a.duplicateRemoval(); 结果: [1, 2, 3, 4, 5, 7]

Array 对象方法

方法 描述 备注
concat()  连接两个或更多的数组,并返回结果。

var arr1=["张三","李四","王五"];
var arr2=["Tom","Jack","TM"];
arr1.concat(arr2);
结果:["张三", "李四", "王五", "Tom", "Jack", "TM"]
join()  把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。

var arr1=["张三","李四","王五"];
var arr2=arr1.join(',');
console.log(arr2);
结果: 张三,李四,王五
pop()  删除并返回数组的最后一个元素

var arr1=["张三","李四","王五"];
arr1.pop();
console.log(arr1);
结果:["张三", "李四"]
push()  向数组的末尾添加一个或更多元素,并返回新的长度。

var arr1=["张三","李四","王五"];
arr1.push("赵六");
console.log(arr1);
结果: ["张三", "李四", "王五", "赵六"]
reverse()  颠倒数组中元素的顺序。

var arr1=["张三","李四","王五"];
var arr2=arr1.reverse();
console.log(arr2);
结果: ["王五", "李四", "张三"]
shift()  删除并返回数组的第一个元素

var arr1=["张三","李四","王五"];
arr1.shift();
console.log(arr1);
结果: ["李四", "王五"]
slice()  从某个已有的数组返回选定的元素

var arr1=["张三","李四","王五"];
var arr2=arr1.slice(1,2);
console.log(arr2);
结果: ["李四"]
sort()  对数组的元素进行排序

var arr1 = [11,2,28,4,5,1];
var arr2 = arr1.sort(function(a,b){
return a-b;
})
console.log(arr2);
结果: [1, 2, 4, 5, 11, 28]
splice()  删除元素,并向数组添加新元素。

var arr1=["张三","李四","王五"];
var arr2=arr1.splice(1,1,"赵六");
console.log(arr1);
结果: ["张三", "赵六", "王五"]
toString()  把数组转换为字符串,并返回结果。

var arr1=["张三","李四","王五"];
var arr2=arr1.toString();
console.log(arr2);
结果: 张三,李四,王五
toLocaleString()  把数组转换为本地字符串,并返回结果

var arr1=["张三","李四","王五"];
var arr2=arr1.toLocaleString();
console.log(arr2);
结果: 张三,李四,王五
unshift()  向数组的开头添加一个或更多元素,并返回新的长度。

var arr1=["张三","李四","王五"];
arr1.unshift("第一个");
console.log(arr1);
结果: ["第一个", "张三", "李四", "王五"]
valueOf()  返回数组对象的原始值

var arr1=["张三","李四","王五"];
var arr2=arr1.valueOf();
console.log(arr2);
结果: ["张三", "李四", "王五"]

JavaScript数组常用操作总结的更多相关文章

  1. JavaScript数组常用操作

    前言 相信大家都用惯了jquery或者underscore等这些类库中常用的数组相关的操作,如$.isArray,_.some,_.find等等方法.这里无非是对原生js的数组操作多了一些包装. 这里 ...

  2. js,jQuery数组常用操作小结

    一.js中数组常用操作小结 (1) shift:删除原数组第一项,并返回删除元素的值:如果数组为空则返回undefined var a = [1,2,3,4,5]; var b = a.shift() ...

  3. Linux Shell数组常用操作详解

    Linux Shell数组常用操作详解 1数组定义: declare -a 数组名 数组名=(元素1 元素2 元素3 ) declare -a array array=( ) 数组用小括号括起,数组元 ...

  4. 数组toString()方法,数组常用操作

    int[] arr ={1,2,3,4,5}; String arrString = Arrays.toString(arr); //输出[I@7150bd4d System.out.println( ...

  5. JavaScript数组常见操作

    JavaScript数组常见操作 Tip: 右键在新标签中打开查看清晰大图 下面介绍JavaScript中的数组对象遍历.读写.排序等操作以及与数组相关的字符串处理操作 创建数组 一般使用数组字面量[ ...

  6. javascript数组常用的遍历方法

    本篇文章给大家带来的内容是关于javascript数组常用的遍历方法(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 前言 本文主要介绍数组常见遍历方法:forEach.m ...

  7. 快学Scala 第三课 (定长数组,变长数组, 数组循环, 数组转换, 数组常用操作)

    定长数组定义: val ar = new Array[Int](10) val arr = Array("aa", "bb") 定长数组赋值: arr(0) = ...

  8. java基础之数组常用操作

    常用的对数组进行的操作 1.求数组中最大值,最小值 思路:假设下标为0的元素是最大值,遍历数组,依次跟max进行比较,如果有元素比这个max还大,则把这个值赋给max.最小值同样 public cla ...

  9. JavaScript循环和数组常用操作

    while循环 语法: do while循环 语法:do{循环体}while(条件表达式); 特点:do while循环不管条件是否成立,无论如何循环体都会执行一次. 使用场合:用户输入密码,如果密码 ...

随机推荐

  1. servlet-mysql实现简单用户登录注册

    环境:IDEA Maven 效果截图: 项目结构: 类说明: ConnectionUtil:负责数据库连接和释放 UserDao:数据库增删改查操作 User:用户Bean,只用注册和登录的话可以不要 ...

  2. react.js学习之路四

    针对学习react.js中,我感觉最大的疑惑点就是bind(this)的绑定和指向问题了,我被这个问题弄的头昏,有时候调用组件的时候,直接显示undefined,不存在这个组件,当时的心情是崩溃的,整 ...

  3. 【guava】前提条件

    guava为编写漂亮代码提供了很大的便利,今天,我想向你展示下我是怎么使用预判断来避免不必要的if/throw 申明,使用选择来提升代码逻辑性. 预判断并不是新东西,Apache Commons项目有 ...

  4. 最大子树和 树形dp

    题目描述 小明对数学饱有兴趣,并且是个勤奋好学的学生,总是在课后留在教室向老师请教一些问题.一天他早晨骑车去上课,路上见到一个老伯正在修剪花花草草,顿时想到了一个有关修剪花卉的问题.于是当日课后,小明 ...

  5. 绿色版NVM安装与配置详细说明

      绿色版本(不需要安装,直接解压,然后配置环境变量等) 由于最初发布的nvm并不支持window,所以如果希望可以像在*nix上一样控制node的版本,有两种选择: nvm-windows nodi ...

  6. Tomcat 连接数与线程池详解

    前言 在使用tomcat时,经常会遇到连接数.线程数之类的配置问题,要真正理解这些概念,必须先了解Tomcat的连接器(Connector). 在前面的文章 详解Tomcat配置文件server.xm ...

  7. 洛谷 P2518 [HAOI2010]计数 (组合数)

    题面 luogu 题解 本来想练数位dp的,结果又忍不住写了组合数.. 去掉一个\(0\)可以看作把\(0\)移到前面去 那么题目转化为 \(n\)有多少个排列小于\(n\) 强制某一位比\(n\)的 ...

  8. P2754 [CTSC1999]家园

    传送门 人在各个太空站流动,所以显然的网络流模型 因为不同时间能走的边不同,所以显然按时间拆点 但是因为不知道要多少时间,所以要枚举时间,动态拆点 每一点向下一个时间的同一点连流量为 $INF$ 的边 ...

  9. VBS映射网络驱动器 映射网络驱动器

    Dim objNetwork Set objNetwork = CreateObject("Wscript.Network") if objNetwork.EnumNetworkD ...

  10. SiteServer CMS简介

    SiteServer CMS 是中国在.NET平台下.强大的企业站开源CMS内容管理系统和网站群系统. 能够最低的成本.最少的人力投入在最短的时间内架设好一个功能齐全.性能优异.规模庞大并易于维护的网 ...