⊗jsPmDmChA 355 of 505 menu

Vantagens e desvantagens do encadeamento em JavaScript

Apesar de o encadeamento encurtar o código, na maioria dos casos, introduzir uma variável é mais conveniente. Compare os dois exemplos - agora eu introduzi a variável elem e posso definir qualquer quantidade de atributos, enquanto querySelector é chamado apenas uma vez:

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

Agora, como não estou introduzindo uma nova variável, preciso chamar querySelector duas vezes:

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

Na minha opinião, este código ficou mais complexo, embora ocupe uma linha a menos. Além disso, se eu quiser alterar o valor do id de 'elem' para outro, terei que fazer isso em vários lugares, o que não é muito conveniente.

Há também outro problema - a carga no navegador. A busca de elementos na página, feita pelo método querySelector, é uma operação bastante lenta (e, de modo geral, qualquer trabalho com elementos da página é uma operação lenta - lembre-se disso).

No nosso caso, se usarmos querySelector cada vez, o navegador processará o HTML da página e buscará o elemento com o id especificado várias vezes (não importa que o id seja o mesmo - o navegador executará todas as ações várias vezes), realizando operações desnecessárias que podem retardar o funcionamento do navegador.

Se usarmos a variável elem - nenhuma busca na página ocorre (o elemento já foi encontrado e a referência a ele está armazenada na variável).

Dado o seguinte código:

<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);

Indique as desvantagens deste código. Corrija-as.

Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar