Conforme mostrado no título, veja o exemplo abaixo.
(Você pode usar o navegador Chrome e, em seguida, clique com o botão direito do mouse para revisar os elementos. Chame as ferramentas do desenvolvedor e insira o console do console para entrar)
(Dicas de uso: Shift+Enter pode ser usado para quebrar a linha ao entrar no console)
A cópia do código é a seguinte:
var name = "xiaoming";
(função(){
Var Nome = Nome || "Xiao Zhang";
console.info (nome);
}) (); // xiao zhang
(função(){
nome = nome || "Xiao Zhang";
console.info (nome);
}) (); // xiaoming
(função(){
var name2 = nome;
Var Nome = Nome || "Xiao Zhang";
console.info (nome, nome2);
}) (); // Xiao Zhang indefinido
A captura de tela durante a execução é a seguinte:
A explicação é a seguinte:
Em javascript.
A cópia do código é a seguinte:
função xxx () {
// Um monte de código ...
// ...
var name2 = nome;
Var Nome = Nome || "Xiao Zhang";
// um monte de códigos
}
Esta é a forma equivalente quando executada:
A cópia do código é a seguinte:
função xxx () {
var name2 = indefinido;
Var nome = indefinido;
// Outros vars também serão avançados para o ponto de partida
// Um monte de código ...
// ...
nome2 = nome;
nome = nome || "Xiao Zhang";
// um monte de códigos
}