自定义的函数
function outFn(arg){ return function(obj1,obj2){ var value1 = obj1[arg]; var value2 = obj2[arg]; if(value1<value2){ return -1; }else if(value1>value2){ return 1; }else{ return 0; } } }
声明一个数组:
var data = [{name:"a",age:28},{name:"b",age:18}];
调用data.sort()方法后
data.sort(outFn("age")); //按照age排序 console.log(data); //=>[{name:"a",age:28},{name:"b",age:18}] console.log(data[0].age); //=>18 data.sort(outFn("name")); //按照name排序 console.log(data); //=>[{name:"a",age:28},{name:"b",age:18}] console.log(data[0].age); //=>28
把最后3行注释,按照age排序中是正常的
console.log(data); //=> [{name:"b",age:18},{name:"a",age:28}]
不理解红色的地方,求高手解答。
四季花海
相关分类