Comparação do desempenho entre 4 métodos que podem adicionar itens a uma matriz:
Adicione usando o indexador
A cópia do código é a seguinte:
console.Time ("Index");
var a = [];
for (var i = 0, l = times; i <l; i ++) {
a [i] = i;
}
console.TimeEnd ("Index");
Use o método push
A cópia do código é a seguinte:
console.time ("push");
var a = [];
for (var i = 0, l = times; i <l; i ++) {
a.push (i);
}
console.TimeEnd ("push");
Use o método concat
A cópia do código é a seguinte:
console.time ("concat");
var a = [];
for (var i = 0, l = times; i <l; i ++) {
A.CONCAT (I);
}
console.TimeEnd ("concat");
Use o método concat, os parâmetros são matrizes
A cópia do código é a seguinte:
console.time ("concat com a matriz");
var a = [];
for (var i = 0, l = times; i <l; i ++) {
A.Concat ([i]);
}
console.TimeEnd ("concat com a matriz");
Definir horários para 100 milhões de vezes:
A cópia do código é a seguinte:
ÍNDICE: 0,310ms
Push: 1,476ms
Concat: 8.911ms
Concat com a matriz: 2.261ms
Definir tempos para 100.000 (100.000) vezes:
A cópia do código é a seguinte:
ÍNDICE: 1.967ms
Push: 11.980ms
Concat: 70.410ms
Concat com a matriz: 28.292ms
Definir horários para 1000000 (milhões) vezes:
A cópia do código é a seguinte:
ÍNDICE: 138.559ms
Push: 93.074ms
Concat: 608.768ms
Concat com a matriz: 243.371ms
Definir horários para 100.000 (10 milhões) vezes:
A cópia do código é a seguinte:
ÍNDICE: 1473.733MS
Push: 611.636ms
Concat: 6058.528ms
Concat com a matriz: 2431.689ms
Resumir
Esta conclusão é útil apenas com o navegador Chrome
A eficiência de execução do método concat é o mais lento
Comparado com a transmissão de argumentos dos dois métodos concat, quando os parâmetros aceitos são matrizes, a eficiência da execução é maior que a dos parâmetros aceitos como não-marcas.
Na maioria dos casos, a eficiência da execução do indexador é maior que a do método push.
Quando o número de execuções aumenta, a eficiência da execução do indexador começa a ser pior do que a do método push
Comparação do navegador
Graças aos internautas por apontar que não tenho experiência, então aqui estão as comparações horizontais entre os navegadores
Primeiro, use o método Concat. No IE e no Firefox, os parâmetros são matrizes, e a eficiência da execução é mais lenta que os outros parâmetros não são marcos, mas a diferença não é grande.
Então é certo que os métodos de índice e push são mais rápidos que concat. O uso do método de índice no IE é sempre mais rápido que o push. Push é um pouco melhor no Firefox, mas a diferença não é grande
Comparado com a eficiência da execução dos métodos de índice e push entre os três navegadores, a eficiência da execução do Firefox é muito maior que a do IE e do Chrome. Em um milhão de vezes, é basicamente 10 vezes mais rápido. Eu sou o mais lento em comparação com os outros dois.
A seguir, são apresentados os resultados de milhões:
A cópia do código é a seguinte:
// Firefox
ÍNDICE: O timer começou
ÍNDICE: 229,79ms
Push: Timer começou
Push: 205.12ms
Concat: o timer começou
Concat: 2136.99ms
Concat com a matriz: Timer começou
Concat com a matriz: 2365.18ms
`` `
A cópia do código é a seguinte:
// ou seja
ÍNDICE: 2.533.744 milissegundos
Push: 3.865,979 milissegundos
Concat: 4.303.139 milissegundos
Concat com a matriz: 4.792,208 milissegundos
Este artigo é apenas para explorar o desempenho do JS. Ele aprofundará a compreensão de JavaScript de seus amigos por meio da comparação. Eu espero que você possa gostar.