JScript tiene un amplio conjunto de operadores, entre los que se incluyen operadores aritméticos, lógicos, de bits y de asignación, así como algunos operadores variados.
| Description | Symbol |
|---|---|
| Negación unitaria | - |
| Incremento | ++ |
| Decremento | |
| Multiplicación | * |
| División | / |
| Módulo aritmético | % |
| Adición | + |
| Sustracción | - |
| Descripción | Símbolo |
|---|---|
| NOT lógico | ! |
| Menor que | < |
| Mayor que | > |
| Menor que o igual a | <= |
| Mayor que o igual a | >= |
| Igualdad | == |
| Desigualdad | != |
| AND lógico | && |
| OR lógico | || |
| Condicional (ternario) | ?: |
| Coma | , |
| Igualdad estricta | === |
| Desigualdad estricta | !== |
| Descripción | Símbolo |
|---|---|
| NOT de bits | ~ |
| Desplazamiento de bits a la izquierda | << |
| Desplazamiento de bits a la derecha | >> |
| Desplazamiento de bits a la derecha sin signo | >>> |
| AND de bits | & |
| XOR de bits | ^ |
| OR de bits | | |
| Descripción | Símbolo |
|---|---|
| Asignación | = |
| Asignación compuesta | OP= |
La diferencia entre == (igualdad) e === (igualdad estricta) es que el operador de igualdad convertirá los valores de diferentes tipos antes de comprobar la igualdad. Por ejemplo, la comparación entre la cadena "1" y el número 1 se interpretará como true. Por otro lado, el operador de igualdad estricta no convertirá los valores a tipos diferentes, por lo que la cadena "1" no se considerará igual al número 1.
Las cadenas primitivas, los números y los tipos Booleanos se comparan por valor. Si tienen el mismo valor, se considerarán iguales. Los objetos (incluidos los objetos Array, Function, String, Number, Boolean, Error, Date y RegExp) se comparan por referencia. Aunque dos variables pertenecientes a dichos tipos tengan el mismo valor, sólo se considerarán iguales si hacen referencia al mismo objeto.
Por ejemplo:
// Dos cadenas primitivas con el mismo valor. var cadena1 = "Hola":var cadena2 = "Hola":// Dos objetos String, con el mismo valor. var ObjetoString1 = new String(cadena1); var ObjetoString2 = new String(cadena2); // El resultado en este caso será true. if (cadena1 == cadena2) // hacer algo (se ejecutará) // El resultado en este caso será false. if (ObjetoString1 == ObjetoString2) // hacer algo (no se ejecutará) // Para comparar el valor de los objetos String, // use los métodos toString() o valueOf(). if (ObjetoString1.valueOf() == ObjetoString2) // hacer algo (se ejecutará)
| Ayuda de Javascript y Vbscript para Javascripts.astalaweb.com. |