關於類對象的訪問
在學習一個示例的時候,用到利用函數參數訪問函數屬性的。如下
var a = [{
"name":"Bob",
"age":12
},{
"name":"Jelly",
"age":1
}];
function createComparitionMethod(property){
return function(obj,obj2){
var val1 = obj1.property;
var val2 = obj2.property;
return var2-var1;
}
}
window.onload = function(){
console.log(a.sort(createComparitionMethod("age")));
}
我發現不管怎麼改age排序都不會改變。就想到應該是返回比較函數的出了問題。再一查發下property應該是String。是不能通過點訪問的。我就納悶了,js居然不報錯。。。。我測試了一下。返回值應該是undefined。然後改成obj1[property]就可以了。