'value'와 'label'과 같은 몇 가지 속성을 가진 객체 배열이 있습니다.하나의 속성을 사용하여 객체 배열을 결합하십시오.
array.join(' ')
물론 나는 "[object] [object]"를 제공하지만 대신 모든 개체의 'value'속성의 문자열을 공백으로 구분해야합니다.
이렇게하는 가장 빠른 방법은 무엇이며 for 루프를 작성하지 않고 이것이 가능합니까?
jQuery.map() 사용해보십시오'value'와 'label'과 같은 몇 가지 속성을 가진 객체 배열이 있습니다.하나의 속성을 사용하여 객체 배열을 결합하십시오.
array.join(' ')
물론 나는 "[object] [object]"를 제공하지만 대신 모든 개체의 'value'속성의 문자열을 공백으로 구분해야합니다.
이렇게하는 가장 빠른 방법은 무엇이며 for 루프를 작성하지 않고 이것이 가능합니까?
jQuery.map() 사용해보십시오-Array.map()이 JSON.stringify() 들어 있기 때문에 IE < 9 지원
의 사용하지 않는 - 오래된 브라우저 지원을 위해
$.map(array, function(obj){return JSON.stringify(obj)}).join(' ')
업데이트를 json2을 사용 : 값 속성을 얻으려면
var string = $.map(array, function(obj){
return obj.value
}).join(' ');
데모 : Fiddle
,'return' 문이 누락 된 것 같습니다. – undefined
@undefined thanks :), 수정되었습니다 ... –
그것은 나쁘게 설명했습니다 것 같습니다. 내 질문을 편집, 배열에있는 개체의 모든 '값'속성의 공백으로 구분 된 문자열입니다. –
사용 Array.map
:
let data = [
{
"animal": "cat",
"name": "Fluffy"
},
{
"animal": "dog",
"name": "Bowser"
},
{
"animal": "cat",
"name": "Felix"
}
]
지금 .map
를 사용하여 이름을 추출 :
let names = data.map(item => item.name)
let nameString = names.join(' ')
그리고 지금 nameString
이 Fluffy Bowser Felix
이 포함되어 있습니다.
개체가 비슷합니까? 즉, 단일 생성자 함수로 만들 수 있습니까? 그렇다면'.toString()'메소드를'Constructor.prototype' 객체에 추가하여 문자열로 변환 할 때의 모습을 정의 할 수 있습니다. 그럼'array.join ("")' –
... [데모보기] (http://jsfiddle.net/2fYvN/)를 할 수 있습니다. 이것은 배열을 새로운 값으로 수동으로 매핑하여 결합하는 것보다 좋을 것입니다. –