js對象根據鍵名排序、加密、去空格

整理網絡,而且本身根據須要作了修改

//排序的函數******此處降序********
var objKeySort = function (obj) {
    //先用Object內置類的keys方法獲取要排序對象的屬性名,再利用Array原型上的sort方法對獲取的屬性名進行排序,newkey是一個數組
    var newkey = Object.keys(obj).sort().reverse();
    //建立一個新的對象,用於存放排好序的鍵值對
    var newObj = {};
    //遍歷newkey數組
    for (var i = 0; i < newkey.length; i++) {
        //向新建立的對象中按照排好的順序依次增長鍵值對
        newObj[newkey[i]] = obj[newkey[i]];
    }
    //返回排好序的新對象
    return newObj;
};

//md5加密     hex_md5() 請引用 md5.js   
var encodeMd5 = function (obj) {
    //先用Object內置類的keys方法獲取要排序對象的屬性名,再利用Array原型上的sort方法對獲取的屬性名進行排序,newkey是一個數組
    // var newkey = Object.keys(obj).sort().reverse();
    var newkey = Object.keys(obj);

    //建立一個新的變量,用於存放拼接字符串
    var newStr = '';

    //遍歷newkey數組
    for (var i = 0; i < newkey.length; i++) {
        //拼接字符串拼接值以及鏈接符
        if(i){ newStr += "_"; }
        newStr += obj[newkey[i]];
    }

    return hex_md5(newStr);
};

//去除空格
var Trim = function (str) {
    return str.replace(/(^\s*)|(\s*$)/g, "");
}
相關文章
相關標籤/搜索