我们在日常开发过程中,使用到原生 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. 日期 Date()

    1.Date 对象用于处理日期和时间.创建 Date 对象的语法:var myDate=new Date()Date 对象会自动把当前日期和时间保存为其初始值.2.参数形式有以下5种: new Dat ...

  2. php代码审计4审计代码执行漏洞

    代码执行漏洞代码执行漏洞是指应用程序本身过滤不严,用户可以通过请求将代码注入到应用中执行,当应用在调用一些能将字符串转化成代码的函数(如php中的eval)时,没有考虑到用户是否能控制这个字符串,造成 ...

  3. linux系统安全及应用——PAM安全认证

    一.PAM认证模块介绍 PAM认证模块,叫做可插拔式的认证模块.一项重要的功能就是为了加强su命令的使用控制,可以借助于PAM认证模块,只允许极个别用户使用su命令进行切换.PAM提供了对所有服务进行 ...

  4. Trie树【洛谷P3879】 [TJOI2010]阅读理解

    P3879 [TJOI2010]阅读理解 题目描述 英语老师留了N篇阅读理解作业,但是每篇英文短文都有很多生词需要查字典,为了节约时间,现在要做个统计,算一算某些生词都在哪几篇短文中出现过. 输入输出 ...

  5. C++中define与const的区别

    C++中不但可以用define定义常量还可以用const定义常量,它们的区别如下: 用#define MAX 255定义的常量是没有类型的,所给出的是一个立即数,编译器只是把所定义的常量值与所定义的常 ...

  6. [APIO2009]抢掠计划 tarjan缩点+spfa BZOJ1179

    题目描述 Siruseri 城中的道路都是单向的.不同的道路由路口连接.按照法律的规定, 在每个路口都设立了一个 Siruseri 银行的 ATM 取款机.令人奇怪的是,Siruseri 的酒吧也都设 ...

  7. iOS开发时间戳与时间NSDate,时区的转换,汉字与UTF8,16进制的转换

    http://blog.sina.com.cn/s/blog_68661bd80101njdo.html 标签: ios时间戳 ios开发时间戳 ios16进制转中文 ios开发utf8转中文 ios ...

  8. 老男孩python作业5-开发一个简单的python计算器

    开发一个简单的python计算器 实现加减乘除及拓号优先级解析 用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568 ...

  9. Linux 未安装vi如何编辑文件

    sed -i "s/搜索内容/替换内容/g" 文件名

  10. 动态规划 70.climbing Stairs

    1. 记忆化搜索 - 自上向下的解决问题:使用vector来保存每次计算的结果,如果下次再碰到同样的需要计算的式子就不需要重复计算了. 2. 动态规划 - 自下向上的解决问题 解法一:自顶向下 解法二 ...