JS 数组常用方法

时间 2020/8/3 10:20:47 加载中...

过滤

  1. var arr = [
  2. { id:1, name:"tom", age:20 },
  3. { id:2, name:"jack", age:18 },
  4. { id:3, name:"jerry", age:30 },
  5. ];
  6. console.log('======================================')
  7. console.log(JSON.stringify(arr));
  8. // 过滤: 得到大于20岁的人
  9. console.log('过滤: 得到大于20岁的人')
  10. gl>var oldPersons = arr.filter(m => {
  11. if(m.age > 20)
  12. return m;
  13. })
  14. console.log(JSON.stringify(arr));
  15. console.log(JSON.stringify(oldPersons));

遍历

  1. // 遍历:新增一个年纪:青年(20岁一下包括20岁),老年(60以上),壮年(其他)
  2. gl>arr.forEach((item,index) => {
  3. if(item.age <= 20) {
  4. item.type = '青年'
  5. }
  6. else if (item.age > 60){
  7. item.type = '老年'
  8. }
  9. else{
  10. item.type = '壮年'
  11. }
  12. })
  13. console.log(JSON.stringify(arr));

形成新的集合

如何新加的属性不改变原数组,则需要 深度复制

  1. // 形成新的集合: 获取 id 集合
  2. gl>var ids = arr.map(m => {
  3. return m.id
  4. });
  5. console.log(ids)
  1. var newArr = arr.map(m => {
  2. // 深度复制
  3. var mCopy = Object.assign({}, m);
  4. mCopy.old = JSON.stringify(m)
  5. return mCopy
  6. })
  7. console.log(JSON.stringify(arr))
  8. console.log(JSON.stringify(newArr))

排序

  1. arr.sort(function (a, b) {
  2. if (a.age < b.age)
  3. return -1;
  4. })
  5. console.log(JSON.stringify(arr))
扫码分享
版权说明
作者:SQBER
文章来源:http://www.sqber.com/articles/js-arr-common-method.html
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。