JS 函数中返回另一个函数



function createComparisonFunction(propertyName) { return function (object1, object2) { var value1 = object1[propertyName]; var value2 = object2[propertyName]; if (value1 < value2) { return -1; } else if (value1 > value2) { return 1; } else { return 0; } } } var data = [{ name: "Zachary", age: 28 }, { name: "Nicholas", age: 30 }];
data.sort(createComparisonFunction("name"));//按照对象的Name 属性进行排序 alert(data[0].name); //Nicholas; data.sort(createComparisonFunction("age"));//按照对象Age属性进行排序 alert(data[0].name);//Zachary

  

posted @ 2014-11-14 16:33  yellowshorts  阅读(10856)  评论(1编辑  收藏  举报