JavaScript Array 技巧
filter():返回该函数会返回true的项组成的数组
var num = [,,,,];
var result = num.filter(function(item,index,array){
return (item > );
})
console.log(result);//[3]
map():返回每次调用结果组成的数组
var num = [,,,,];
var result = num.map(function(item,index,array){
return (item > );
})
console.log(result);// [false,false,true,false,false]
reduce():迭代从数组的第一项到最后一项
//求和
var val = [1, 2, 3]
var sum = val.reduce(function(pre, cur, index, array) {
return pre + cur;
})
console.log(sum); // //数组扁平化
var arr = [
[0, 1],
[2, 3],
[4, 5]
].reduce(function(pre, cur) {
return a.concat(b);
});
// arr 为 [0, 1, 2, 3, 4, 5]
sort:对数组的元素进行排序。
var mymarry = [, , , , -];
var sortAsc = function(x, y) {
return x - y;
};
var sortDesc = function(x, y) {
return y - x;
};
mymarry.sort(sortAsc); //正序
mymarry.sort(sortDesc); //倒序
.indexOf():从数组开头开始向后查,返回查找的项在数组中的位置,没有找到返回-1。
//数组去重 start
function unique(arr) {
var result = [];
for (var i = ; i < arr.length; i++) {
if (result.indexOf(arr[i]) == -) result.push(arr[i]);
}
return result;
}
数组中对应的每一项相加
var list = [{
number: [1, 2, 3, 4]
}, {
number: [1, 2, 3, 4, 5]
}, {
number: [1, 2, 3, 4]
}, {
number: [1, 2, 3, 4, 5]
}];
var arr = [];
for (var i in list) {
if (arr.length) {
for (var x in list[i].number) {
if (!arr[x]) {
arr[x] = 0;
}
arr[x] = arr[x] + list[i].number[x];
}
} else {
arr = list[i].number;
}
}
console.log(arr);
参考:https://segmentfault.com/a/1190000003977377
给出一篇对Array操作很全的文章:http://www.cnblogs.com/onepixel/p/5123115.html
JavaScript Array 技巧的更多相关文章
- javascript实用技巧、javascript高级技巧
字号+作者:H5之家 来源:H5之家 2016-10-31 11:00 我要评论( ) 三零网提供网络编程. JavaScript 的技术文章javascript实用技巧.javascript高级技巧 ...
- 12个非常实用的JavaScript小技巧
在这篇文章中将给大家分享12个有关于JavaScript的小技巧.这些小技巧可能在你的实际工作中或许能帮助你解决一些问题. 使用!!操作符转换布尔值 有时候我们需要对一个变量查检其是否存在或者检查值是 ...
- 一些JavaScript的技巧、秘诀和最佳实践
文章分享一些JavaScript的技巧.秘诀和最佳实践,除了少数几个外,不管是浏览器的JavaScript引擎,还是服务器端JavaScript解释器,均适用. 本文中的示例代码,通过了在Google ...
- javascript小小技巧
JS的一些小技巧,我主要是做后台的(.NET),前端知识了解得不多,经验非常有限,不过还是经常写JS代码,对前端有着浓厚的兴趣,特喜欢js这门语言,虽然很多人喷它,但还是很喜欢Js.下面说说项目中我经 ...
- 11个不常被提及的JavaScript小技巧
这次我们主要来分享11个在日常教程中不常被提及的JavaScript小技巧,他们往往在我们的日常工作中经常出现,但是我们又很容易忽略. 1.过滤唯一值 Set类型是在 ES6中新增的,它类似于数组,但 ...
- [转]11个教程中不常被提及的JavaScript小技巧
原文地址: https://www.cnblogs.com/ld1024/p/10723827.html 这次我们主要来分享11个在日常教程中不常被提及的JavaScript小技巧,他们往往在我们的日 ...
- 11个教程中不常被提及的JavaScript小技巧
这次我们主要来分享11个在日常教程中不常被提及的JavaScript小技巧,他们往往在我们的日常工作中经常出现,但是我们又很容易忽略. 1.过滤唯一值 Set类型是在ES6中新增的,它类似于数组,但是 ...
- JavaScript 实用技巧和写法建议
1.前言 从大学到现在,接触前端已经有几年了,感想方面,就是对于程序员而言,想要提高自己的技术水平和编写易于阅读和维护的代码,我觉得不能每天都是平庸的写代码,更要去推敲,去摸索和优化代码,总结当中的技 ...
- 【前端】javaScript 常用技巧总结
javaScript 常用技巧总结 1. 彻底屏蔽鼠标右键 oncontextmenu="window.event.returnValue=false" <table b ...
随机推荐
- muduo库整体架构简析
muduo是一个高质量的Reactor网络库,采用one loop per thread + thread loop架构实现,代码简洁,逻辑清晰,是学习网络编程的很好的典范. muduo的代码分为两部 ...
- 用DotRas来连接VPN网络
最近要用程序来不断的连接VPN(为什么要这样就不讨论了),开始用的是如下代码: public static bool ADSL() { bool flag = true; do { Console.W ...
- 一种基于路网图层的GPS轨迹优化方案
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 GPS数据正常情况下有20M左右的偏移,在遇到高楼和桥梁等情况 ...
- 用OC和Swift一起说说二叉树
前言: 一:在计算机科学中,二叉树是每个节点最多有两个子树的树结构.通常子树被称作"左子树"(left subtree)和"右子树"(right subt ...
- 版本控制器——Egit使用方法
什么是Git Gitv是目前世界上最先进的分布式版本控制系统. 那我们为什么需要学习Git呢?因为在我们传统的java自学中,所有的项目都是自己独立开发完成,而且项目基本都是小型项目,在优化和体验上往 ...
- [hdu2156]分数矩阵
Problem Description 我们定义如下矩阵:1/1 1/2 1/31/2 1/1 1/21/3 1/2 1/1矩阵对角线上的元素始终是1/1,对角线两边分数的分母逐个递增.请求出这个矩阵 ...
- Triangle Problems
Triangle Problem songxiuhuan 宋修寰 Import the Junit and eclemma Choose the project and right click, ch ...
- 使用promise手动封装ajax函数
最近在做一个单页应用,node和浏览器仅通过json传输数据,因为是只有自己用等于是锻炼一下自己,所以也不用考虑seo的问题,node端我已经写好了,但是浏览器端想要用ajax原生太麻烦,用封装的函数 ...
- static成员是可以被其所在class创建的实例访问!!!
<span style="font-family: Arial, Helvetica, sans-serif; ">关于静态方法以及静态变量的使用就不详细的说了,我就这 ...
- c#XML操作类的方法总结
using System.Xml;using System.Data; namespace DotNet.Utilities{ /// <summary> /// Xml的操作 ...