찾다

 >  Q&A  >  본문

객체 매핑 기능: Map 기능을 객체로 확장

나에게 개체가 있습니다:

으아악

다음과 같이 사용할 수 있는 Array.prototype.map와 유사한 기본 메서드를 찾고 있습니다.

으아악

JavaScript에는 이러한 객체에 대한 map 기능이 있나요? (저는 이것을 Node.JS용으로 원하므로 브라우저 간 문제는 신경 쓰지 않습니다.)

P粉060528326P粉060528326413일 전854

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

  • P粉138871485

    P粉1388714852023-10-09 15:14:40

    JS ES10 / ES2019를 사용하여 한 줄에 한 문장씩 작성해 보는 것은 어떨까요?

    사용 Object.entries( )<代码>Object.fromEntries():

    으아아아

    함수와 같은 내용을 작성하세요:

    으아아아

    이 함수는 또한 재귀를 사용하여 중첩된 개체를 제곱합니다.

    으아아아

    ES7/ES2016에서는 Objects.fromEntries,但您可以使用Object.assign확산 연산자계산된 키 이름과 함께 사용할 수 없습니다. 구문:

    으아아아

    ES6 / ES2015 허용되지 않음 Object.entries,但您可以使用 Object.keys 변경됨:

    으아아아

    ES6에는 for...of 루프도 도입되어 보다 명령적인 스타일이 가능해졌습니다.

    으아아아

    array.reduce()

    이를 위해 reduce를 사용할 수도 있습니다.

    으아아아

    상속된 속성 및 프로토타입 체인:

    드문 경우 프로토타입 체인에 있는 클래스객체를 매핑해야 할 수도 있습니다. 이 경우 Object.keys()Object.keys()Object.entries()Object.entries()

    는 프로토타입 체인을 포함하지 않기 때문에 작동하지 않습니다.

    상속된 속성을 매핑해야 하는 경우 for (key in myObj) {...}for (key in myObj) {...}를 사용할 수 있습니다.

    다음은 이러한 상황의 예입니다.

    으아아아

    하지만 부탁 하나만 들어주시고 상속을 피해주세요. :-)

    회신하다
    0
  • P粉826429907

    P粉8264299072023-10-09 10:42:04

    도착하지 않았습니다Object 对象的本机 map. 그런데 이건 어때요:

    으아아아

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