reduce()方法和map()方法

var kvArrays = [{key: 1, value: 10,me:3}, 
               {key: 2, value: 20,me:2}, 
               {key: 3, value: 30,me:1},
               {key: 4, value: 60,me:2},];


var reformattedArray = kvArrays.reduce((kvArrays,kvArray)=>{
  const {me} = kvArray;
  kvArrays[me] = kvArrays[me] ? [...kvArrays[me] , kvArray]: [kvArray]
  return  kvArrays
}
);
console.log(reformattedArray);
以上代码将一个包含对象的数组用以创建一个包含新重新格式化对象的新数组。
 var kvArrays = [{key: 1, value: 10,me:3}, 
                   {key: 2, value: 20,me:2}, 
                   {key: 3, value: 30,me:1},
                   {key: 4, value: 60,me:2},];
var kvArray={};

var reformattedArray = kvArrays.reduce((kvArrays,kvArray)=>{
  const {me} = kvArray;
  kvArrays[me] = kvArrays[me] ? [...kvArrays[me] , kvArray]: [kvArray]
  return  kvArrays
},{}
);

console.log(reformattedArray);
const obj = {
test() {
console. log( this === obj);
}
};

const t = obj. test;
t() ; //这里t代表方法test(),相当于直接调用

const obj = {
test() { return () => {
// 这里的 this 是 getArrow() 中的 this,
// 由 getArrow() 的调用方式决定
console. log( this === obj);
};
}
};

const t = obj. test(); //加()时,这里的t相当于内部的箭头函数,
//箭头函数的this与外层函数test()被调用的方式有关
//当不带()时,t相当于test()函数
t(); //这里t代表方法test(),隐含意思是obj.test().t()相当于直接调用




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值