Desempenho for – forin – JavaScript용

9286 단어 javascript
Nesse post vou Mostrar através de um exemplo qual laço tem o melhor tempo de execução, só lembrando que o uso de cada umdepende da ocasião e a escolha de quando usar nem semper é baseado no
  • 파라오 예시:
  • 노드 v12.x
  • 비주얼 스튜디오 코드

  • 문서 작성, 터미널 실행 없음 mkdir exemplolacos e depois cd exemplolacos e por ultimo npm init -y .

    Visual Studio 코드는 servico servico.js를 사용하지 않으며, API 사용 예https://swapi.co/는 Star Wars에 대한 정보를 제공하지 않습니다. API 사용에 대한 동의https://www.npmjs.com/package/axios

    comando npm i axios para adiciona ao package.json nas 종속성을 실행합니다.

    O codigo do servico.js 및 대부분의 경우:

    const axios = require('axios');
    
    const urlBase = 'https://swapi.co/';
    
    async function obterPessoas(nome) {
        const url = `${urlBase}/api/people/?search=${nome}&format=json`;
        const resposta = await axios.get(url);
        return resposta.data;
    }
    
    module.exports = {
        obterPessoas
    }
    


    어떤 코드도 필요하지 않습니다.
    모듈을 통해 수출할 수 있는 기능 모듈. 수출용 제품을 수출할 수 있습니다.
    아고라 vamos criar um novo arquivo chamado lacos.js no mesmo nível do servico.js.

    o codigo do arquivo lacos.js encontra-se abaixo:

    const servico = require('./servico');
    
    async function main() {
        try {
            const resultados = await servico.obterPessoas('a');
    
            const names = [];
            /** 1 - For*/
            console.time('for');
            for (let i = 0; i <= resultados.results.length - 1; i++) {
                const pessoa = resultados.results[i];
                names.push(pessoa.name);
            }
            console.timeEnd('for');
            /** 2 - Forin*/
            console.time('forin');
            for (let i in resultados.results) {
                const pessoa = resultados.results[i];
                names.push(pessoa.name);
            }
            console.timeEnd('forin');
            /** 3 - Forof*/
            console.time('forof');
            for (pessoa of resultados.results) {
                names.push(pessoa.name);
            }
            console.timeEnd('forof');
    
            //imprimir resutados
            console.log('nomes', names);
        } catch (error) {
            console.error('houve erro', error);
        }
    }
    
    main();
    


    No código fiz a divisão para cada for, o resultado dos tempos de execução segue abaixo:

    $ node lacos.js 
    for: 0.580ms
    forin: 0.068ms
    forof: 0.423ms
    


    Como podemos observar pelo tempos o que teve melhor desempenho foi o forin, claro que só essa informação não define qual devemos usar, o uso vai 의존자 de cada caso, a tomada de decisão será definida de evolve 케 에스타모스 마니풀란도.

    O codigo completeto 링크 없음: https://github.com/wandealves/exemplolacos

    좋은 웹페이지 즐겨찾기