문자열 배열이 있으면 .join()
메서드를 사용하여 각 요소를 쉼표로 구분하여 단일 문자열을 얻을 수 있습니다 .
["Joe", "Kevin", "Peter"].join(", ") // => "Joe, Kevin, Peter"
객체 배열이 있고 그 안에 보유 된 값에 대해 유사한 작업을 수행하고 싶습니다. 그래서
[
{name: "Joe", age: 22},
{name: "Kevin", age: 24},
{name: "Peter", age: 21}
]
이전과 동일한 출력을 얻으려면 속성 join
에 대해서만 메소드를 수행하십시오 name
.
현재 다음 기능이 있습니다.
function joinObj(a, attr){
var out = [];
for (var i = 0; i < a.length; i++){
out.push(a[i][attr]);
}
return out.join(", ");
}
해당 코드에는 아무런 문제가 없지만 작동하지만 갑자기 간단한 간결한 코드 줄에서 매우 필수적인 기능으로 전환했습니다. 이것을 간결하고 이상적으로 더 기능적으로 작성하는 방법이 있습니까?
users.map(x => x.name).join(', ');
있습니다..
" ,".join([i.name for i in a])