Leer este artículo requiere experiencia de programación en otros idiomas.
Antes de comenzar a estudiar
La mayoría de los lenguajes de programación tienen piezas buenas y piezas malas. Este artículo solo habla sobre las partes buenas de JavaScript, porque:
1. Solo aprender la mejor parte puede acortar el tiempo de aprendizaje
2. El código escrito es más robusto
3. El código escrito es más fácil de leer
4. El código escrito es más fácil de mantener
Tipos débiles y fuertes
En términos generales, cuanto antes arregle el error, menos será el precio que pagará por él. Los compiladores de idiomas fuertemente escritos pueden verificar ciertos errores en el momento de la compilación. JavaScript es un lenguaje de tipo débil, y su intérprete no puede verificar los errores de tipo, pero la práctica muestra que:
1. Los errores que se pueden evitar fuertemente no son esos errores críticos
2. Los tipos débiles pueden brindar flexibilidad sin tener que soportar la carga de los tipos fuertes
Estándares relacionados con JavaScript
El estándar ECMA-262 define el lenguaje ECMAScript. JavaScript y ActionScript, como estamos familiarizados, se basan en ECMAScript. Actualmente, la corriente principal utiliza ECMA-262 versión 5, y el motor V8 de Google es la implementación de esto.
Hola JavaScript
JavaScript es un lenguaje de secuencias de comandos que requiere un intérprete para interpretar y ejecutar. Puede explicar JavaScript en el navegador o usar directamente Node.js, que integra el motor JavaScript V8 de Google. Dado que Node.js es muy conveniente de usar, uso Node.js aquí para explicar la ejecución de JavaScript. Ahora mira el primer programa JavaScript:
La copia del código es la siguiente:
// test.js
console.log ("Hola JavaScript");
Ejecutar este programa:
La copia del código es la siguiente:
nodo test.js
gramática
Comentario
JavaScript utiliza el mismo método de anotación que C ++, // para anotación de una sola línea, / * * / para anotación de múltiples líneas.
Tipo de número
JavaScript tiene solo un tipo de tipo numérico, que es un número de punto flotante de 64 bits. El tipo de número tiene dos valores especiales, Nan e Infinity. El significado de NAN no es un número (no un número). Use la función ISNAN para verificar si es NAN. El valor infinito significa infinito. En un objeto de matemáticas, hay un conjunto de métodos para manipular números, por ejemplo: el método Math.Loor se utiliza para redondearse.
Cadena
La cadena literal se puede envolver en citas simples o dobles, y se usan caracteres escapados (no diferentes de muchos otros idiomas). Cada personaje en JavaScript es dos bytes, que usa el conjunto de caracteres Unicode. Una cadena tiene un atributo de longitud:
La copia del código es la siguiente:
"Hola" .length // El valor es 5, tenga en cuenta que no es "hola" .length ()
Las cadenas no se pueden cambiar (como Lua). Además del atributo de longitud mencionado aquí, hay algunos métodos, como:
La copia del código es la siguiente:
'Cat'.ToUpperCase () ===' Cat '
Declaración
La instrucción VAR se utiliza para declarar variables locales, de lo contrario, la variable es una variable global y el valor de la variable no inicializada no está definido:
La copia del código es la siguiente:
función f () {
var localVar = 123;
GlobalVar = 456;
var i; // El valor de I está indefinido
};
F();
console.log (GlobalVar); // DE ACUERDO
console.log (localvar); // Error, LocalVar no está definido
Un conjunto de declaraciones envueltas por {} se llama bloque de instrucción. A diferencia de otros idiomas, las funciones en JavaScript no crearán nuevos ámbitos, por ejemplo:
La copia del código es la siguiente:
{
var v = 123;
}
console.log (v); // DE ACUERDO
Declaración if
La copia del código es la siguiente:
if (expresión)
declaración
o
La copia del código es la siguiente:
if (expresión)
Declaración 1
demás
declaración 2
o
La copia del código es la siguiente:
if (expresión1)
Declaración 1
más if (expresión2)
declaración 2
más si (expresión3)
declaración3
demás
declaración 4
La declaración IF decide ejecutar o omitir ciertas declaraciones juzgando que el valor de la expresión es verdadero o falso. En JavaScript, los siguientes valores son falsos (otros valores son verdaderos):
1.falso
2. Norma
3.Dinfinado
4. Cadena vacía
5.0
6.NAN
La declaración en IF puede ser una declaración o un bloque de instrucción.
instrucción de cambio
La copia del código es la siguiente:
Switch (n) {
Caso 1: // Si n es igual a 1
// ejecutar bloque de código
romper;
Caso 2: // Si n es igual a 2
// ejecutar bloque de código
romper;
predeterminado: // Si n no es 1 ni 2
// ejecutar bloque de código
romper;
}
Aquí el descanso se usa para salir de una declaración de bucle o una declaración de conmutación. En JavaScript, hay dos operadores que comparan si dos valores son iguales:
1. == (correspondiente al operador), igual, y los dos tipos de operando son diferentes. Este operador intenta convertir el tipo de operando antes de comparar, por ejemplo:
La copia del código es la siguiente:
var x = 1;
x == 1; // verdadero
x == "1"; // verdadero
2. === (correspondiente al operador! ==), que es completamente igual, compara dos operandos y no realiza una conversión de tipo de operando, por ejemplo:
La copia del código es la siguiente:
var x = 1;
x === 1; // verdadero
x === "1"; // FALSO
Cabe señalar que NAN y cualquier valor no son iguales. Si x es nan, entonces x! == x (solo es necesario para nan). Podemos implementar la función ISNAN así:
La copia del código es la siguiente:
función isnan (n) {
return n! == n;
}
La instrucción de conmutación anterior se convierte en la instrucción if como:
La copia del código es la siguiente:
if (n === 1)
// ...
más si (n === 2)
// ...
demás
// ...
mientras que las declaraciones do-while
La copia del código es la siguiente:
Mientras (expresión)
declaración
Si la expresión es verdadera, la declaración de repetición hasta que la expresión sea falsa.
La copia del código es la siguiente:
hacer
declaración
mientras (expresión);
Similar a un bucle de tiempo, solo ejecuta la declaración primero y luego verifica la expresión condicional.
para la declaración
La copia del código es la siguiente:
para (inicializar; prueba; incremento)
declaración
Primero, la inicialización se ejecuta una vez (generalmente se usa para inicializar las variables de bucle), luego la prueba de prueba (generalmente se usa para probar las variables de bucle), si la condición de prueba es falsa, el bucle se detiene, de lo contrario la declaración se ejecuta y luego el incremento (generalmente se usa para actualizar las variables de bucle), y luego se realiza la prueba de condición de prueba, por lo que continúa el bucle. Ejemplo de uso:
La copia del código es la siguiente:
para (var i = 0; i <5; ++ i) {
console.log (i);
}
Otra forma de para para enumerar todos los nombres de atributos de un objeto:
La copia del código es la siguiente:
para (variable en el objeto)
declaración
ejemplo:
La copia del código es la siguiente:
var obj = {
A: 1,
B: 2,
C: 3
};
para (nombre var en obj)
console.log (nombre);
Cabe señalar que usamos el método de HaswnProperty para verificar si el nombre de la propiedad es del objeto o que se encuentra en la cadena prototipo (la cadena prototipo, prototipo se introducirá en el próximo artículo):
La copia del código es la siguiente:
para (var en obj) {
if (obj.hasownproperty (var)) {
// ...
}
}
declaración de retorno
La declaración de retorno se usa para hacer que la función devuelva un valor. Si la función no usa explícitamente retorno, entonces devuelve indefinido:
La copia del código es la siguiente:
función f () {}
var v = f (); // V === Undefinado
?: Operador condicional (el único operador ternario en JavaScript)
?: Los operadores condicionales existen en muchos lenguajes de programación. Cuando el primer operando es verdadero, el operador devuelve el valor del segundo operando, de lo contrario se devuelve el valor del tercer operando. Ejemplo:
La copia del código es la siguiente:
function ABS () {
return x> 0? x: -x;
}
typyOf Operator
El operador de typeOf se utiliza para obtener el tipo de variable, y su valor de retorno incluye:
1. 'Number'
2. 'string'
3. 'Boolean'
4. 'no definido'
5. 'Funciones'
6.'Object '
El resultado devuelto por el tipo de tipo de especial es 'objeto'. Ejemplos sobre typeof:
La copia del código es la siguiente:
var a = typeof 'hello'; // a === 'cadena'
var b = typeOf null; // b === 'objeto'
+ Operador
El operador + se puede usar en JavaScript para operaciones de suma o concatenación de cadenas:
La copia del código es la siguiente:
VAR Message = 'Hello' + 'World'; // mensaje === 'Helloworld'
&& y || operadores
El operador && devuelve el valor del primer operando cuando el primer operando es falso, de lo contrario devuelve el valor del segundo operando.
|| El operador devuelve el valor del primer operando cuando el primer operando es verdadero, de lo contrario devuelve el valor del segundo operando.
La copia del código es la siguiente:
var a = 1 && verdadero; // a ===
var b = 1 || FALSO; // b === 1
|| Un idioma:
La copia del código es la siguiente:
nombre = nombre || 'desconocido'; // Establecer el valor predeterminado 'desconocido' para el nombre