博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js数组 es6
阅读量:6307 次
发布时间:2019-06-22

本文共 2665 字,大约阅读时间需要 8 分钟。

hot3.png

数组排序

var data = [{      name: "李世民",      type: 1    },    {      name: "刘备",      type: 3    },    {      name: "康熙",      type: 2    },    {      name: "曹操",      type: 1    },  ]  function compareUp(propertyName) { // 升序排序      if ((typeof data[0][propertyName]) != "number") { // 属性值为非数字        return function (object1, object2) {        var value1 = object1[propertyName];        var value2 = object2[propertyName];        return value1.localeCompare(value2); //localeCompare 方法来实现中文按照拼音排序      }    } else {      return function (object1, object2) { // 属性值为数字          var value1 = object1[propertyName];        var value2 = object2[propertyName];        return value1 - value2; //val2-val1 降序      }    }  }console.log(data.sort(compareUp("type"))){name: "李世民", type: 1}1:{name: "曹操", type: 1}2:{name: "康熙", type: 2}3:{name: "刘备", type: 3}

//来源于 https://www.cnblogs.com/xiao-hong/p/3194027.html
//来源于 https://www.cnblogs.com/xiao-hong/p/3194027.html// 1 filter()  //过滤掉小于 10 的数组元素:function isBigEnough(element, index, array) {    return (element >= 10);}var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);console.log(filtered);//结果:[12, 5, 8, 130, 44].filter(isBigEnough) : 12, 130, 44//=====================================================// 2 map() 将所有的数组元素转换为大写:var strings = ["hello", "Array", "WORLD"];function makeUpperCase(v) {    return v.toUpperCase();}var uppers = strings.map(makeUpperCase);console.log(uppers);//结果:["hello", "Array", "WORLD"].map(makeUpperCase) : HELLO, ARRAY, WORLD//=====================================================================// 3 some()function _isBigEnough(element, index, array) {    return (element >= 10);}var passed1 = [2, 5, 8, 1, 4].some(_isBigEnough);// passed is falsevar passed2 = [12, 5, 8, 1, 4].some(_isBigEnough);console.log(passed1); // falseconsole.log(passed2); // true  some 只要有满足 就是true//===============================================================//every();//测试是否所有数组元素都大于等于10:function isBigEnough_every(element, index, array) {    return (element >= 10);}var passed3 = [12, 5, 8, 130, 44].every(isBigEnough_every);var passed4 = [12, 54, 18, 130, 44].every(isBigEnough_every);console.log(passed3);  // falseconsole.log(passed4);  // true  //every 全部满足 才是 true//===============================================================//forEach()function printElt(element, index, array) {    document.writeln("[" + index + "] is " + element + "
"); console.log(index);}[2, 5, 9].forEach(printElt);

 

 

数组去重

var arr = [1,2,2,3,4] // 需要去重的数组var set = new Set(arr) // {1,2,3,4}var newArr = Array.from(set) // 再把set转变成arrayconsole.log(newArr) // [1,2,3,4]

转载于:https://my.oschina.net/u/3674038/blog/1577972

你可能感兴趣的文章
北电交换机常用配置
查看>>
Linux磁盘及文件系统管理
查看>>
Linux系统下Apache日志文件设置、更改默认网站目录、防止php***跨站设置、禁止空主机头...
查看>>
shell判断文件是否存在
查看>>
EXCHANGE事务日志和邮箱数据库的存储位置
查看>>
oracle conn /as sysdba后显示 乱码”???“
查看>>
(三)把域服务升级和迁移到Windows Server 2012 R2上
查看>>
动态主机配置协议:DHCP简介
查看>>
跟我学Spring Cloud(Finchley版)-05-服务注册与服务发现-Eureka入门
查看>>
VisualStudio不让控制台程序一闪而过
查看>>
交换机配置
查看>>
python读取excel表格的数据
查看>>
折半查找
查看>>
写给创始人的期权问答及实操白皮书(连载一)
查看>>
jenkins集成sonarqube
查看>>
Sed、Awk和grep 学习笔记(一)
查看>>
row_number()over函数的使用
查看>>
viewPort(浏览器窗口的整个显示区域)
查看>>
如何用树莓派打造一个家庭影院
查看>>
部署 elk 日志系统 elasticsearch、logstash、 kibana
查看>>