js数组 es6

数组排序html

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://juejin.im/post/5a0c16d16fb9a0450b65edad?utm_source=gold_browser_extension数组

//来源于 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 false
var passed2 = [12, 5, 8, 1, 4].some(_isBigEnough);
console.log(passed1); // false
console.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);  // false
console.log(passed4);  // true  //every 所有知足 才是 true

//===============================================================
//forEach()
function printElt(element, index, array) {
    document.writeln("[" + index + "] is " + element + "<br />");
    console.log(index);
}
[2, 5, 9].forEach(printElt);

 

 

数组去重post

var arr = [1,2,2,3,4] // 须要去重的数组

var set = new Set(arr) // {1,2,3,4}
var newArr = Array.from(set) // 再把set转变成array

console.log(newArr) // [1,2,3,4]
相关文章
相关标签/搜索