요즘에는 모두가 더 적은 코드를 작성하여 유망한 결과를 얻기 위해 이러한 고차 함수를 사용하려고 노력하고 있습니다. 하지만 이러한 기능이 내부적으로 어떻게 작동하는지 알고 싶습니다.
내가 비슷한 글을 썼다고 가정해 보세요
var 숫자 = [16, 25, 36]; var 결과 = number.map(Math.sqrt); console.log(결과); // [4, 5, 6]
"숫자" 배열의 각 요소가 하나씩 반복된다는 것을 알고 있지만 <어떻게?
찾아보려 했지만 아직 만족스러운 답변을 얻지 못했습니다.
모든 공급업체는사양을 따라야 한다고 생각합니다.
실제 구현(예: V8)은 다소 복잡할 수 있습니다. 먼저이 답변을 참조하세요. github에서 v8 소스코드를 참고할 수도 있지만, 그 일부를 분리해서 이해하기는 쉽지 않을 수 있습니다.
위 답변 인용:
ES2015 사양:
"length"
))로 설정합니다..map
콜백을 받아들이고, 배열의 각 항목에 대해 콜백을 호출하고, 새 배열에 값을 할당하는 메서드입니다. 특별한 것은 아닙니다. 스스로도 쉽게 할 수 있습니다: