zoukankan      html  css  js  c++  java
  • js数组练习

      1 //查找数组对象中 age 大于 18 对象
      2 function filterAdult(arr) {
      3     return arr.filter(function(item, index, array) {
      4         return (item.age > 18);
      5     });
      6 }
      7 filterAdult([
      8     {age: 19, name:'Jack'},
      9     {age: 5, name:'Apple'},
     10     {age: 12, name:'Lynn'},
     11     {age: 25, name:'David'}
     12 ]);
     13 
     14 
     15 //判断数组中是否所有的数字都大于 0 
     16 function isAllNumPosive(arr) {
     17     return arr.every(function(item, index, array) {
     18         if (typeof item === "number") {
     19             return (item > 0);
     20         } else {
     21             return true;
     22         }
     23     });
     24 }
     25 isAllNumPosive([1, 2, 3, 4]);  // 输出 true
     26 isAllNumPosive([1, 2, 3, 4, -1]);  // 输出 false
     27 isAllNumPosive([1, 2, 3, 4, 'a', {a:3}]);  // 输出 true
     28 
     29 
     30 
     31 //改变传入的数组,将数组中第 n(从 0 开始算 ) 个元素放到数组的开头 
     32 function putFirst(arr, index) {
     33     var item = arr.splice(index, 1);
     34     arr.unshift(item[0]);
     35     return arr;
     36 }
     37 var arr = [1, 2, 3, 4];
     38 putFirst(arr, 2);
     39 
     40 //将数组中数字内容求和
     41 function sum(arr) {
     42     var sum = 0;
     43     for (i in arr) {
     44         if (typeof arr[i] === 'number') {
     45             sum += arr[i];
     46         }
     47     }
     48     return sum;
     49 }
     50 sum([1, 2, 3, 4]);  // 输出 10 
     51 sum(['a', 1, 2, {a:3}, 3, 4, 1.2]);  // 输出 11.2
     52 
     53 
     54 //将数组元素按 age 字段的值,从小到大排序 
     55 function sortAge(arr) {
     56     return arr.sort(function(v1, v2) {
     57         if (v1.age < v2.age) {
     58             return -1;
     59         } else {
     60             return 1;
     61         }
     62     });
     63 }
     64 sortAge([
     65     {age: 19, name:'Jack'},
     66     {age: 5, name:'Apple'},
     67     {age: 12, name:'Lynn'},
     68     {age: 25, name:'David'}
     69 ]);
     70 
     71 
     72 //将数组元素去重,其中数组元素均为基本类性 
     73 function uniq(arr) {
     74     var newArr = [];
     75     var isUniq = true;
     76     for (i in arr) {
     77         for (j in newArr) {
     78             if (arr[i] === newArr[j]) {
     79                 isUniq = false;
     80             }
     81         }
     82         if (isUniq) {
     83             newArr.push(arr[i]);
     84         } else {
     85             isUniq = true;
     86         }
     87     }
     88     return newArr;
     89 }
     90 uniq([1,2,2,3,4,4,4,4]); // 输出 [1,2,3,4]
     91 uniq([1,2,'M','e','r', 'r', 'y']); // 输出 [1,2,'M','e','r','y']
     92 
     93 
     94 //将数组内容乱序 
     95 function random(arr) {
     96     return arr.sort(function() {
     97         return (Math.random()>0.5?-1:1);
     98     })
     99 }
    100 random([1,2,3,4]);
    101 
    102 
    103 //未解决!!!!
    104 // 将 arguments 对象转换成数组 
    105 function toArray(obj) {
    106     var array = [];
    107     for (i in obj) {
    108         array.push(obj[i]);
    109     }
    110     return array;
    111 }
    112 (function(){
    113     var arr = toArray(arguments);
    114     Array.isArray(arr); 
    115 })(1, 2);
  • 相关阅读:
    《一课经济学》八、通货膨胀与尾声
    《一课经济学》七、房租管制和最低工资法
    《一课经济学》六、政府价格管制
    《一课经济学》五、价值体系的运作
    《一课经济学》四、国际贸易
    《一课经济学》三、就业相关
    《一课经济学》二、政府的投资、税收与信贷
    《一课经济学》一、破窗谬误与“战祸之福”
    《人类简史》十五、开启未来(下)——智慧之心
    C++ Template之类模版
  • 原文地址:https://www.cnblogs.com/HiuYanChong/p/5287521.html
Copyright © 2011-2022 走看看