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
相關文章
相關標籤/搜索