Js 数组的各种方法及操作
一、数组去重
var arr = [0,1,20,3,0,45,6,0];
Array.prototype.unrepeat = function(){
var array = [];
for(var i = 0;i<this.length;i++){
if(array.indexOf(this[i]) === -1){
array.push(this[i]);
}
}
return array;
}
console.log(arr.unrepeat());
二、数组排序
var arr = [1,5,9,4,8,7]
arr = arr.sort(function(a,b){return a-b}) // 升序
console.log(arr);
三、数组对象的排序
var arr = [{id:1},{id:7},{id:5},{id:9},{id:20},{id:3}]
arr = arr.sort(function(a,b){return a.id - b.id})
console.log(arr)
四、字符串转换数组的小方法
1)eval():
var arr = "[1,2,3,4,5]";
console.log(eval(arr)) // 性能较差
2)JSON.parse();
var arr = "[1,2,3,4,5]";
console.log(JSON.parse(arr))
3)es6的Array.of()
console.log(Array.of(1,2,3,4,8))
console.log(Array.of("a","b","c","d"))
4)非字符串数组格式的字符串转化成数组
var arr = "1,2,3,4,5";
arr = "["+arr+"]"
console.log(JSON.parse(arr),eval(arr));
五、数组转化成字符串
1)toString()
var arr = ["Creek","Sinoshy","Stream"]
console.log(arr.toString()) // 以“,”作为分隔符
2)join()
var arr = ["Creek","Sinoshy","Stream"]
console.log(arr.join()) // 默认以逗号分隔,如果给参数,那么会根据给的参数进行分隔
六、删除两个数组中相同的元素
let arr1 = [1,5,7];
let arr2 = [1,2,3,4,5,6,7]
for(let i = 0;i < arr1.length;i ++){
for(let x = 0;x < arr2.length;x ++){
if(arr1[i] === arr2[x]){
arr2.splice(x,1)
}
}
}
console.log(arr2)
Js 数组的各种方法及操作的更多相关文章
- 关于JS数组的栈和队列操作
1.js支持重载吗? 虽然js 本身并没有函数重载,但是可以用arguments来模拟重载,函数名相同,参数不同,arguments的length属性,获取参数个数,索引属性获取参数值 2.什么是作用 ...
- JS —— 数组与字符串方法
数组 1. 基本方法 1)Array.prototype.unshift(item1,item2,item3...) 描述: 在数组的前面添加元素,一次可以传入多个参数. 注意:元素会根据当前传入的 ...
- js数组去重的方法(转)
JS数组去重的几种常见方法 一.简单的去重方法 // 最简单数组去重法 /* * 新建一新数组,遍历传入数组,值不在新数组就push进该新数组中 * IE8以下不支持数组的indexOf方法 * */ ...
- js数组高阶方法reduce经典用法代码分享
以下是个人在工作中收藏总结的一些关于javascript数组方法reduce的相关代码片段,后续遇到其他使用这个函数的场景,将会陆续添加,这里作为备忘. javascript数组那么多方法,为什么我要 ...
- JS 数组常用的方法
数组常用的方法: x.toString()方法:任何对象都有toString方法. 将任何对象转为字符串. 一般不主动调用,系统在需要时自动调用 x.valueOf()方法:同toStr ...
- js数组的forEach方法能不能修改数组的值
如果要使用数组的forEach()方法对其改值时,需要直接通过arr[i]这种方式来更改. 请看下面代码: // 数组改值 let arr = [1,3,5,7,9]; arr.forEach(fun ...
- js数组之迭代方法
ES5为数组对象定义了5个迭代方法(即递归,简单的说就是自己可以调用自己). 每个方法接收两个参数:要在每一项上运行的函数(接收3个参数:数组项的值,该项在数组中的位置,数组对象本身)和(可选的) ...
- js 数组中的方法
<!DOCTYPE html><html><head> <title>数组的方法</title> <meta charset=&quo ...
- js数组的splice方法
w3school文章链接:http://www.w3school.com.cn/jsref/jsref_splice.asp splice:拼接,结合. splice()方法向数组添加/删除元素,返回 ...
随机推荐
- SetupFactory 许可协议设置
我用的SetupFactory版本是9.1.0 没有汉化 一开始自己也不知道 百度发现有人在问同样的问题但是没解决 自己找了一会偶然发现 界面左侧 Screens->Before Install ...
- 前端 Vue
0.渐进式 JavaScript 框架 通过对框架的了解与运用程度,来决定其在整个项目中的应用范围,最终可以独立以框架方式完成整个web前端项目 一.Vue介绍 1.什么是Vue 可以独立完成前后端分 ...
- docker Dockerfile学习---nginx负载均衡tomcat服务
1.此过程在nginx的基础上,也就是上篇博客写的内容. 2.创建项目目录并上传包,解压 $ mkdir centos_tomcat $ cd centos_tomcat $ tar zxvf jdk ...
- kubeadm生成的token重新获取
当你的token忘了或者过期,解决办法如下: 1.先获取token #如果过期可先执行此命令kubeadm token create #重新生成token#列出tokenkubeadm token l ...
- pycharm 2020 激活码 破解教程
以下是安装完pycharm后进行破解!! 1.修改hosts,在hosts文件最后添加2行“0.0.0.0 account.jetbrains.com”和“0.0.0.0 www.jetbrain ...
- leetcood学习笔记-118-杨辉三角
题目描述: 第一次提交: class Solution: def generate(self, numRows: int): l = [] for i in range(numRows): n = [ ...
- 6361. 【NOIP2019模拟2019.9.18】鲳数
题目 题目大意 给你一个区间\([l,r]\),求这个区间内每个整数的十进制上从高位到低位的逆序对个数之和. 思考历程 一开始就知道这是个数位DP-- 结果一直都没有调出来,心态崩了-- 正解 先讲讲 ...
- NX二次开发-获取矩阵值UF_CSYS_ask_matrix_values
NX9+VS2012 #include <uf.h> #include <uf_csys.h> UF_initialize(); //获取WCS标识 tag_t WcsId = ...
- RHEL / CentOS Linux Install Core Development Tools Automake, Gcc (C/C++), Perl, Python & Debuggers
how do I install all developer tools such as GNU GCC C/C++ compilers, make and others, after install ...
- Codeforces 166B - Polygon (判断凸包位置关系)
Codeforces Round #113 (Div. 2) 题目链接:Polygons You've got another geometrical task. You are given two ...