물결 모양의 점 연산자

wavy-dot operator 제안에 대해 어떻게 생각하십니까?


tc39 / 제안 물결 모양 점


TC39 물결 모양 점("~.") 제안





제안 물결 모양 점


Promise 파이프라이닝을 위한 Pleasant Notation.
  • Mark S. Miller @erights, Agoric
  • 마이클 피그 @michaefig, Agoric
  • Chip Morningstar @FUDCo, 에버노트

  • 상태


    TC39(자바스크립트 표준 위원회)에 제출되어 1단계 달성.

    Slides

    요약


    이것은 proposal-eventual-send 제안에 대한 후속 제안으로 해당 제안의 API에 대한 구문 설탕을 제공합니다.
    2011 ECMAScript strawman concurrency proposal
    또한 인픽스 뱅(!) 연산자의 간단한 디슈가링을 설명했습니다.
    프로미스 파이프라이닝을 지원합니다. TypeScript와의 충돌을 피하기 위해 이 제안은
    대신 물결 모양 점(~.) 구문을 도입합니다.

    물결 모양 점


    optional chaining proposal 의 (?.) 처럼 물결모양 점(~.)은 점(.)과 같은 우선순위를 가지는 중위 연산자로 제안되었다. 둘 다 형용사 점, 즉 점과 같은 연산으로 이해할 수 있지만 형용사에 따라 다릅니다. 옵션 체인 제안이 수락되면 추가할 것입니다…

    View on GitHub

    요컨대 물결 모양 점은 PromiseLike 객체에서 Promise에 의해 확인된 값의 속성으로 Promise를 웨이브하는 데 사용할 새로운 연산자~.입니다.
    항상 점 뒤의 작업 결과로 어떻게 해결(또는 거부)할지 약속을 반환합니다.

    사용 가능한 작업은
  • [] 및 속성 이름을 모두 사용하는 속성 액세스
  • 메서드/함수 호출

  • 예를 들어:

    
    const asyncArray = new Promise((resolve) => resolve([1, 2, 3, 4]))
    
    // Without the wavy-dot operator
    console.log((await asyncArray)[0])  // => log: 1
    console.log((await asyncArray).length)  // => log: 3
    console.log((await asyncArray).join('-'))  // => log: 1-2-3
    
    // With the wavy-dot operator
    console.log(await asyncArray~.[0])  // => log: 1
    console.log(await asyncArray~.length)  // => log: 3
    console.log(await asyncArray~.join~.('-'))  // => log: 1-2-3
    


    유용하다고 생각하십니까?

    좋은 웹페이지 즐겨찾기