찾다

 >  Q&A  >  본문

스프레드 연산자를 사용하여 맵 함수에서 키-값 쌍을 반환하는 방법

<p>객체와 배열이 있습니다. 가정:</p> <pre class="brush:php;toolbar:false;">const 먼저 = { 'key1': '어떤 날짜', 'key2': '어떤 날짜' } const second = ['key3', 'key4']</pre> <p>그런 다음 확장된 구문을 사용하여 이들을 단일 개체로 병합합니다. 배열의 각 항목에 대해 새 키-값 쌍을 만들고 이를 병합된 개체에 넣으려고 합니다. 현재는 키-값 쌍이 아닌 맵 함수에서만 객체를 반환할 수 있습니다. 이것을 어떻게 바꾸나요? </p> <pre class="brush:php;toolbar:false;">const 결합 = { ...첫 번째, ...second.map(key => ({ [key]: new Date() })) // 객체 대신 키-값 쌍을 반환합니다. }</pre> <p>내가 얻은 결과:</p> <pre class="brush:php;toolbar:false;">{ '0': { key3: '어떤 날짜' }, '1': { key4: '어떤 날짜' }, key1: '어떤 날짜', key2: '어떤 날짜' }</pre> <p>내가 원하는 결과:</p> <pre class="brush:php;toolbar:false;">{ key1: '어떤 날짜', key2: '어떤 날짜', key3: '어떤 날짜', key4: '어떤 날짜' }</pre> <p><br /></p>
P粉253800312P粉253800312502일 전507

모든 응답(1)나는 대답할 것이다

  • P粉925239921

    P粉9252399212023-08-14 14:46:08

    이렇게 할 수 없습니다. map 배열을 출력합니다(여기서 각 값은 원래 배열의 일치하는 인덱스에 있는 값을 함수에 전달한 결과입니다). 배열을 객체로 확장하면 속성 이름으로 인덱스(번호)를 가져오고 값으로 값을 가져옵니다.

    배열로 시작해서 객체로 끝내고 싶다면 map就是错误的工具。请改用reduce는 잘못된 도구입니다. 대신 reduce를 사용하세요.

    다음 코드와 유사:

    으아아아

    회신하다
    0
  • 취소회신하다