js對象比較


使用閉包實現 js 對象按指定屬性進行大小比較

需要比較的對象

let obj1 = {
    name:'張三',
    age:19
};
let obj2 = {
    name:'李四',
    age:22
};

創建返回閉包的比較方法

function compareObjectFunction(propName){
    return function(obj1,obj2){
        let val1 = obj1[propName],
            val2 = obj2[propName];
        if(val1 < val2){
            return -1;
        }else if(val1 > val2){
            return 1;
        }else{
            return 0;
        }
    }
}

調用方法:

1、首先傳入比較的屬性名獲取比較方法

2、使用比較方法進行對象比較

如:按姓名比較

const compareName = compareObjectFunction('name');
compareName(obj1,obj2);

如:按年齡比較

const compareAge = compareObjectFunction('age');
compareAge(obj1,obj2);

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM