매개 변수로 배열 요소를 전달하고 싶습니다.매개 변수를 배열 요소로 전달
배열이 있고 배열에 Column1 및 Column2 요소가 있습니다. 내 코드가 column1 또는 column2에 따라 배열을 정렬합니다. 지금은 1과 2 값을 매개 변수로 전달하고 정렬 코드에 if 조건이 있습니다.
내가 좋아하는 내 코드를 변경하려면:
function sortGrid(ColumnName)
및
var val1 = a.ColumnName.toLowerCase()
당신이 어떤 제안이 있습니까를?
코드 :
<html lang="">
<body>
<script>
var arr = [{"Column1":"A","Column2":"F"},{"Column1":"Z","Column2":"B"}];
function sortGrid(col) {
arr.sort(function (a, b) {
if (col == 1)
{
var val1 = a.Column1.toLowerCase();
var val2 = b.Column1.toLowerCase();
};
if (col == 2)
{
var val1 = a.Column2.toLowerCase();
var val2 = b.Column2.toLowerCase();
};
if (val1 < val2)
return -1
if (val1 > val2)
return 1
});
}
sortGrid(1)
console.log(arr[0].Column1)
console.log(arr[1].Column1)
console.log('-------------------')
sortGrid(2)
console.log(arr[0].Column1)
console.log(arr[1].Column1)
</script>
</body>
</html>
'a.ColumnName' (작동하지 않는) 대신'a [ColumnName]'을해라 : 그것은 동적 인 방법이다. – trincot
고맙습니다. 그것은 효과가있다. – Grcn