1、定义数据
var objData={
chinesename:"风四娘",
englishname:"FengSiniang",
age:"26",
address:"成都市",
sex:"女",
birthday:"1992-12-12",
nationality:"中国",
height:"175CM",
weight:"60Kg",
}
2、定义方法
//排序的函数
function objKeySort(obj){
//【1】用Object内置类的keys方法获取要排序对象的属性名
//【2】用Array原型上的sort方法对获取的属性名进行排序,返回一个新数组newkey
var newkey = Object.keys(obj).sort();
var newObj = {}; //创建一个新的对象,用于存放排好序的键值对
for(var i = 0; i < newkey.length; i++) { //遍历newkey数组
newObj[newkey[i]] = obj[newkey[i]]; //向新创建的对象中按照排好的顺序依次增加键值对 ,
//newObj[newkey[i].toLowerCase()] = obj[newkey[i]]; 并大写转换小写【做签名验证会用】
}
return newObj; //返回排好序的新对象
}
调用方法:
objKeySort(objData)
3、排序结果
排序前
Object {
chinesename: "风四娘",
englishname: "FengSiniang",
age: "26",
address: "成都市",
sex: "女",
birthday: "1992-12-12",
nationality: "中国",
height: "175CM",
weight: "60Kg"
}
排序后
Object {
address: "成都市",
age: "26",
birthday: "1992-12-12",
chinesename: "风四娘",
englishname: "FengSiniang",
height: "175CM",
nationality: "中国",
sex: "女",
weight: "60Kg"
}