整理网络,并且自己根据需要做了修改 //排序的函数******此处降序******** 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, ""); }