js闭包使用简例

闭包原理很多,理解闭包很重要,学会在实际开发中使用同样重要。

const goods=[
  {
    id:1,
    name:'item1',
    price:99,
    discount:9.7
  },
  {
    id:2,
    name:'item2',
    price:88,
    discount:9
  },
  {
    id:3,
    name:'item3',
    price:108,
    discount:8.8
  },

]

/*
* params {String} propsName 
* return {Function}
*
*/

function sortBy(propName){
  return function (arr) {
    const retArr=[...arr]
    return retArr.sort((a,b)=>a[propName]-b[propName])
  }
}

const sortByPrice=sortBy('price')
const sortByDiscount=sortBy('discount')
const log=console.log
log(sortByPrice(goods))//=>返回按价格排序的ObjectArray
log(sortByDiscount(goods))//返回按折扣排序的ObjectArray
发布了22 篇原创文章 · 获赞 0 · 访问量 2245

猜你喜欢

转载自blog.csdn.net/weixin_44156518/article/details/88387752
今日推荐