对象的比较问题
function createCoparisonFunction(propertyName){
return function(obj1,obj2){
var v1 = obj1[propertyName] ;
var v2 = obj2[propertyName];
return v1 - v2;
};
}
var data = [{name:"Nicolas" , age: 28},{name : "Zachary", age:27}];
data.sort(createCoparisonFunction("name"));
/*for(var i=0;i<data.length;i++){
alert(data[i].name);
}*/
alert(data[0].name);
data.sort(createCoparisonFunction("age"));
alert(data[0].name);
我想问下其中 var v1 = obj1[propertyName] ;
var v2 = obj2[propertyName];
做何解释?有点不太明白。
希望高人指点下
------解决方案--------------------
obj[attr] 当attr是变量或者数字的时候,可以使用这种格式
比如这样是错误的
JScript code
var obj = {
1: 123
}
alert( obj.1 )