⊗jsPmDmChA 355 of 505 menu

JavaScript에서 체이닝의 장점과 단점

체이닝이 코드를 줄여주긴 하지만, 대부분의 경우 변수를 도입하는 것이 여전히 더 편리합니다. 두 예제를 비교해 보세요 - 지금은 변수 elem를 도입했기 때문에 임의의 수의 속성을 설정할 수 있으며, querySelector는 단 한 번만 호출됩니다:

let elem = document.querySelector('#elem'); elem.value = 'www'; elem.type = 'submit';

하지만 지금은 새 변수를 도입하지 않았기 때문에 querySelector를 두 번 호출해야 합니다:

document.querySelector('#elem').value = 'www'; document.querySelector('#elem').type = 'submit';

제 생각에는 이 코드가 한 줄은 짧아졌지만 더 복잡해졌습니다. 게다가 id의 값을 'elem'에서 다른 값으로 변경하고 싶다면, 여러 곳에서 수정해야 하는데 이는 그리 편리하지 않습니다.

또 다른 문제도 있습니다 - 브라우저 부하입니다. querySelector 메서드가 수행하는 페이지 내 요소 검색은 상당히 느린 작업입니다 (그리고 일반적으로 페이지 요소와의 모든 작업은 느린 작업입니다 - 이것을 기억하세요).

우리의 경우, 매번 querySelector를 사용하면 브라우저는 매번 HTML 페이지를 처리하고 주어진 id를 가진 요소를 여러 번 찾게 됩니다 (id가 동일하다고 해도 상관없습니다 - 브라우저는 불필요한 작업을 여러 번 수행하여 브라우저 작동을 느려지게 할 수 있습니다).

반면에 변수 elem를 사용하는 경우 페이지 검색이 전혀 발생하지 않습니다 (요소가 이미 찾아졌고 그에 대한 참조가 변수에 저장되어 있습니다).

다음 코드가 주어졌습니다:

<img id="image" src="avatar.png" width="300" height="500"> console.log(document.querySelector('#image').src); console.log(document.querySelector('#image').width); console.log(document.querySelector('#image').height);

이 코드의 단점을 지적하세요. 그리고 이를 수정하세요.

한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부