我有這樣的Javascript代碼串進行排序,但我得到的錯誤A.K未定義如何解決字段名稱是未定義的錯誤?
var dataset = [{
"field1": "dfg34r",
"field2": "sdfsd"
}, {
"field1": "d3f32dg",
"field2": "fgjfgj"
}, {
"field1": "fdbhjjts",
"field2": "hswer"
}, {
"field1": "dfg4r",
"field2": "ghje"
}, {
"field1": "fgsdfwe",
"field2": "dhfke"
}];
function sort_col(evt){
var k = evt.target.innerText; //k = clicked field name field1 or field2
dataset.sort(function (a, b) {
var nameA = a.k.toUpperCase(); // error here a.k is undefined
var nameB = b.k.toUpperCase();
if (nameA < nameB) {
return -1;
}
if (nameA > nameB) {
return 1;
}
// names must be equal
return 0;
});
}
如果我刪除toUpperCase
代碼的正常工作,所以我怎麼能解決這個錯誤,並能字符串轉換爲大寫?
是的,謝謝,它應該是[k] .toUpperCase(); – Wel