Prefácio
Array é uma parte importante do JavaScript. Pode ser usado para armazenar cordas, objetos, funções e números. É muito poderoso. Portanto, um profundo entendimento da matriz é um trabalho de casa obrigatório de front-end. É sexta -feira, e o coração do blogueiro está começando a surgir novamente. Existe algum fim de semana amanhã? Eu posso me divertir novamente.
Crie uma matriz
Existem duas maneiras básicas de criar matrizes, uma é literal e a outra é criada usando construtores:
var arr = [1,2,3]; // Crie valores de matriz na forma de literais e são separados por vírgulas em inglês
var arr = [1,2,3]; // cria valores de matriz na forma de literais e são separados por vírgulas em inglês var arr1 = nova matriz (1,2,3); // Construtor cria uma matriz para criar um objeto de matriz através do novo operador // Além disso, você também pode omitir o novo operador, embora não seja recomendável fazer isso na maioria das vezes. var Arr1 = Array (1,2,3); Omita o novo operador para criar um objeto de matriz. Essa sintaxe é muito semelhante ao PHP, mas sua chave não pode ser especificada no JavaScript.
ÍNDICE DE ARAY: pares de valor-chave
Tomando literais como exemplo, cada item de matriz possui uma chave correspondente, que também pode ser chamada de [subscrito] e [índice]. A chave padrão no JavaScript inicia de 0 e determina seu nome de chave de acordo com a posição do item da matriz. O valor do item da matriz é consultado através do nome da chave. A sintaxe geral é a matriz [i]:
var sarr = ["hello", "java", "script"]; // Os nomes de chave correspondentes são 0, 1, 2 console.log (Sarr [0]); //olá
Imprima as matrizes no console do Firefox e você pode ver claramente o relacionamento correspondente no console:
No lado direito do console, a relação lógica entre chaves e valores é listada de uma maneira muito intuitiva. 0 corresponde a Hello, 1 corresponde a Java e 2 corresponde ao script. Mais comumente, a contagem de matrizes JavaScript começa em 0 [0-1-2] == [1-2-3] O primeiro é olá, o segundo é Java, e o terceiro é o script;
Cada matriz tem um comprimento, nenhum valor é 0 e é obtido através do método da matriz.Length. O comprimento da figura acima é 3, que pode ser visto claramente no lado direito do console. Além disso, um pequeno truque é introduzido. A maioria das listas de atributos listadas no console do console do Firefox é diretamente acessível. Você pode acessá -lo através do número ou acesso [Array.Length] [Array ['Comprimento']] através da forma de uma chave;
A propriedade de comprimento de uma matriz é muito distinta ----- não é somente leitura. Portanto, ao definir esta propriedade, você pode remover itens do final da matriz ou adicionar novos itens à matriz, castanha:
var colors = ['vermelho', 'azul', 'verde']; // cria uma matriz de 3 strings colors.length = 2; alerta (cores [2]); // indefinido não existe
Shangli excluiu o último item 'verde' da matriz e também pode ser adicionado:
var colors = ['vermelho', 'azul', 'verde']; // cria uma matriz de 3 strings colors [colors.length] = 'preto'; // O comprimento inicial das cores é 3. Este código é equivalente às cores [3] = 'preto'; alerta (cores [3]); // preto
Dicas 1:
Portanto, a questão é que, às vezes, meus amigos esquecem de repente um certo nome de atributo enquanto bate. O que devo fazer?
Imprima -o no console do Firefox, observe suas propriedades, considere o objeto de localização como um exemplo de console.log (localização):
console.log (localização);
Depois de conseguir isso, é muito mais fácil obter um certo valor? Por exemplo, se você obtiver o endereço URL atual [location.href], obtenha o nome de domínio [local.hostname], etc., ou se você deseja obter o método no Windows, isso é o mesmo, o que é muito conveniente;
Pilha de matriz
O que é uma pilha de matriz? Isso significa que as matrizes podem ser expressas como pilhas (sem sentido), então o que é a pilha?
O entendimento do código é que a pilha é uma estrutura de dados que pode restringir a inserção e exclusão de itens. A pilha é um LIFO (último na primeira saída, primeiro a sair), ou seja, o item mais recente adicionado é removido primeiro e o item adicional mais antigo está na parte inferior da pilha. Veja a foto:
Semelhante aos blocos de construção, os blocos de construção abaixo sempre podem ser obtidos no final. Se colocado em um novo local, uma [pilha] é formada.
Retire -o na pilha de matrizes e chame -a [pop] e coloque -a e chame -a [empurre]
Existem dois métodos na matriz JavaScript [pop ()] [empurrar é push ()]
var sarr = ["Hello", "Java", "Script"]; Sarr.push ("Black"); // Puxe um BlackConsole.log (Sarr [3]) // BlackConsole.log (sarr.pop ()) // Black // Pop Black Console.Log (Sarr [3]);fila
A regra de acesso para dados de pilha é LIFO (primeiro em e depois para fora), enquanto a regra de acesso para a estrutura de dados da fila é de FIF0 (primeiro em, primeiro a sair). As filas são frequentemente usadas para percorrer as matrizes e operam continuamente em matrizes; Os métodos da fila usam o shift () para exibir itens avançados das matrizes, ou seja, itens com subscritos de 0.
var sarr = ["hello", "java", "script"]; console.log (Sarr.Shift ()); // Hello // Shift é semelhante ao método pop. O pop aparece do final da matriz e o turno é do início do console do array.log (Sarr [0]); // Java Hello foi aparecido
Use o método de mudança para formar uma fila:
var sarr = ["hello", "java", "script"]; var alf = Sarr.shift (); // Retire o primeiro item sarr.push (alf); // insert to console.log (SARR); // ['java', 'script', 'hello']
Através do timer SetInterval, podemos percorrer continuamente cada item de matriz. A postagem anterior do blog foi explicada. "Portal Settimeout e SetInterval Timer e Array de loop assíncrono.
setInterval (function () {console.log (Sarr [0]); // imprima o primeiro item var alf = Sarr.shift (); // retire o primeiro item Sarr.push (alf); // insira no final da matriz}, 1000);Shangli continuará imprimindo Hello Java Script
Sabemos que as matrizes podem armazenar valores de qualquer tipo. Por isso, colocamos as funções que precisamos ser executadas em um loop na matriz e, em seguida, usamos o método da fila para executá -lo continuamente e, em seguida, podemos percorrer os métodos na fila:
function hello () {console.log ("hello");} função java () {console.log ("java");} função script () {console.log ("script");} var alf = [hello, java, script]; setInterval (function ous) {var alf = Sarr = [hello, sarr.push (alf); alf (); // execute método}, 1000);Também pode imprimir hello java script loops, mas é mais poderoso
Resumo dos métodos comuns de matrizes
1. Classificar
Já existem dois métodos na matriz JavaScript que podem ser usados diretamente para reordenar: reverse () e Sort ().
reverse () reorganiza o flashback da matriz:
var sarr = [1,2,3,4,5,6]; console.log (Sarr.Reverse ()); // 6,5,4,3,2,1
Há também um método mais poderoso ()
O Sort () padrão () reordesia a matriz em ordem ascendente. Deve -se notar que o tipo chamará o método ToString () de cada item; portanto, o tamanho real do tipo é baseado em strings:
var sarr = [6,2,2,4,5,6]; console.log (Sarr.sort ()); // 2,2,4,5,6,6 ordem ascendente var sarr = [6,2,2,11,4,5,6]; console.log (Sarr.sort ()); // 11,2,2,4,5,6,6
O tamanho real da comparação é uma string. O método de comparação de string é geralmente comparar o primeiro personagem no personagem, então '11' <2 'a' <'b'
A classificação também pode passar uma função como um parâmetro, que pode redefinir o método de classificação da matriz:
Função Compare (Val1, Val2) {// Orty passa dois parâmetros Valor 1 e valor 2IF (val1 <val2) {// Quando o valor 1 é menor que o valor 2 retorno -1 significa o valor movente 1 Avançar por uma posição retornar -1; } else if (val1> val2) {return 1;} else {return 0;}} var sarr = [6,2,11,1,4,5,6]; console.log (Sarr.sort (compare)); // [2, 2, 4, 5, 6, 6, 11] Comparamos na função e o resultado final é normalSe [Val1 <Val2] retornar 1 a mais que retornar -1, podemos organizá -lo em um flash; Também podemos especificar seu método de classificação;
2. Array de operando
① Copie uma matriz e salve (clone) O método concat () pode criar uma nova matriz com base em todos os itens na matriz atual. Ao passar os parâmetros, ele adicionará os parâmetros ao final da matriz juntos.
var sarr = ["Hello", "Java", "Script"]; var Farr = Sarr.Concat ("!"); Console.log (Farr); // ["Hello", "Java", "Script", "!" ]② Slice () Ele pode criar uma nova matriz com base em um ou mais itens na matriz atual. Ele pode aceitar 1 ou dois parâmetros, ou seja, as posições iniciais e finais do item a serem copiadas. Apenas um parâmetro possui a posição final padrão no final da matriz, para que também possa clonar uma matriz;
var sarr = ["Hello", "Java", "Script"]; var Farr = Sarr.slice (0); Console.log (Farr); // ["Hello", "Java", "Script"] var Farr = Sarr.slice (0,1) Console.Log (Farr); // Take 0-1 e criam um cópia (0,1)
Resumir
Matrizes são uma parte muito importante no JavaScript. Aprendê -lo bem pode simplificar o código no trabalho. Muitas vezes, você pode tentar colocá -los em uma matriz e executar uma série de operações através do método da matriz. A postagem do blog é limitada, mas não há limite para o aprendizado. Espero que todos possam aprender alegremente e dominar seu desenvolvimento de front-end mais rápido!
O acima exposto é uma análise dos métodos comuns de matrizes no JavaScript introduzido a você pelo editor. Espero que seja útil para você. Se você tiver alguma dúvida, deixe -me uma mensagem e o editor responderá a você a tempo. Muito obrigado pelo seu apoio ao site wulin.com!