[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/ru/docs/Web/JavaScript/Guide/Expressions_and_operators [Back]  [Original]

- JavaScript | MDN

This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

JavaScript, , , , , , , .

.

In this article

JavaScript . .

JavaScript , - . , :

operand1 operator operand2

: 3+4 x*y.

, :

operator operand

operand operator

: x++ ++x.

( "=") , . =, , . , x = y , x y.

, , :

x = y x = y
x += y x = x + y
x -= y x = x - y
x *= y x = x * y
x /= y x = x / y
x %= y x = x % y
x <<= y x = x << y
x >>= y x = x >> y
x >>>= y x = x >>> y
AND x &= y x = x & y
XOR x ^= y x = x ^ y
OR x |= y x = x | y

JavaScript - , , , .

js
var foo = ["one", "two", "three"];

//  
var one = foo[0];
var two = foo[1];
var three = foo[2];

//  
var [one, two, three] = foo;

, . , , . , Unicode-. , , JavaScript , . . === !==, . . :

js
var var1 = 3,
  var2 = 4;
, true
(==) true, . 3 == var1 "3" == var1 3 == '3'
(!=) true, . var1 != 4 var2 != "3"
(===) true, . Object.is sameness in JS. 3 === var1
(!==) true, / . var1 !== "3" 3 !== '3'
(>) true, . var2 > var1 "12" > 2
(>=) true, . var2 >= var1 var1 >= 3
(<) true, . var1 < var2 "2" < 12
(<=) true, . var1 <= var2 var2 <= 5

: (=>) , .

( ) . (+), (-), (*), (/). ( , Infinity). :

js
console.log(1 / 2); /*  0.5 */
console.log(1 / 2 == 1.0 / 2.0); /*  true */

, JavaScript , :

(%) . . 12 % 5 2.
(++) . . (++x), ; (x++) . x 3, ++x x 4 4, x++ 3 x 4.
(--) . . . x 3, --x x 2 2, x-- 3 x 2.
- . . x 3, -x -3.
(+) . , . +"3" 3. +true 1.
(**) , , 2 ** 3 8. 10 ** -1 0.1.

()

32 ( ), , . , 9 1001. , JavaScript.

JavaScript.

a & b , .
a | b , .
a ^ b , .
~ a .
a << b a b , .
a >> b a b , .
a >>> b a b , .

:

  • 32- ( ). , 32 . , 32 32- :

        : 11100110111110100000000000000110000000000001
     :             10100000000000000110000000000001
    
  • : , - , .

  • , .

, 9 1001, - 1111. :

15 & 9 9 1111 & 1001 = 1001
15 | 9 15 1111 | 1001 = 1111
15 ^ 9 6 1111 ^ 1001 = 0110
~15 -16 ~``00000000...``00001111 = ``1111``1111``...``11110000
~9 -10 ~``00000000``...``0000``1001 = ``1111``1111``...``1111``0110

, 32 , ( ) 1 ( ).

: , , . .

32- , .

.

(<<) . , , . . 9<<2 36, 1001 2 100100, 36.
(>>) . , , . . 9>>2 2, 1001 2 10, 2. -9>>2 -3, .
(>>>) . , , . . 19>>>2 4, 10011 2 100, 4. .

() ; . && || , , , . .

(&&) expr1 && expr2 ( ) expr1, false; expr2. , , && true, true; false.
(||) expr1 || expr2 ( ) expr1, true; expr2. , , || true, true; false, false.
(!) !expr ( ) false, true; true.

, false : null, 0, NaN, ("") undefined.

&& ( ).

js
var a1 = true && true; // t && t  true
var a2 = true && false; // t && f  false
var a3 = false && true; // f && t  false
var a4 = false && 3 == 4; // f && f  false
var a5 = "Cat" && "Dog"; // t && t  Dog
var a6 = false && "Cat"; // f && t  false
var a7 = "Cat" && false; // t && f  false

|| ( ).

js
var o1 = true || true; // t || t  true
var o2 = false || true; // f || t  true
var o3 = true || false; // t || f  true
var o4 = false || 3 == 4; // f || f  false
var o5 = "Cat" || "Dog"; // t || t  Cat
var o6 = false || "Cat"; // f || t  Cat
var o7 = "Cat" || false; // t || f  Cat

! ( ).

js
var n1 = !true; // !t  false
var n2 = !false; // !f  true
var n3 = !"Cat"; // !t  false

, :

  • false && anything - false.
  • true || anything - true.

, . , "anything" , .

, , (+) , , -:

js
console.log("my " + "string"); //      "my string".

+= () :

js
var mystring = "alpha";
mystring += "bet"; //   "alphabet"   mystring.

()

JavaScript, . . :

condition ? val1 : val2

: val1 val2 - , continue break.

condition () - , val1. val2. , .

js
var status = age >= 18 ? "adult" : "minor";

"adult" status, age 18 . status "minor".

(,) . for, .

, a , 10 , . :

js
for (var i = 0, j = 9; i <= 9; i++, j--)
  document.writeln("a[" + i + "][" + j + "]= " + a[i][j]);

- .

delete

delete , , . :

js
delete objectName;
delete objectName.property;
delete objectName[index];
delete property; //    with

objectName , property - , index - , ( ) .

, with.

delete , , , var.

delete undefined. delete true ; false, .

js
x = 42;
var y = 43;
myobj = new Number();
myobj.h = 4; //   h
delete x; //  true (    )
delete y; //  false (      var)
delete Math.PI; //  false (   )
delete myobj.h; //  true (   )
delete myobj; //  true (    )

. , a[3], a[4] a[4], a[3] undefined.

delete, . trees[3] delete. , trees[3] undefined.

js
var trees = new Array("redwood", "bay", "cedar", "oak", "maple");
delete trees[3];
if (3 in trees) {
  //   
}

, , undefined, undefined delete. trees[3] undefined, :

js
var trees = new Array("redwood", "bay", "cedar", "oak", "maple");
trees[3] = undefined;
if (3 in trees) {
  //    
}

typeof

typeof :

typeof operand
typeof (operand)

typeof . operand , , , , . .

, :

js
var myFun = new Function("5 + 2");
var shape = "round";
var size = 1;
var today = new Date();

typeof :

js
typeof myFun; //  "function"
typeof shape; //  "string"
typeof size; //  "number"
typeof today; //  "object"
typeof dontExist; //  "undefined"

true null typeof :

js
typeof true; //  "boolean"
typeof null; //  "object"

typeof :

js
typeof 62; //  "number"
typeof "Hello world"; //  "string"

typeof :

js
typeof document.lastModified; //  "string"
typeof window.length; //  "number"
typeof Math.LN2; //  "number"

typeof :

js
typeof blur; //  "function"
typeof eval; //  "function"
typeof parseInt; //  "function"
typeof shape.split; //  "function"

typeof :

js
typeof Date; //  "function"
typeof Function; //  "function"
typeof Math; //  "object"
typeof Option; //  "function"
typeof String; //  "function"

void

void :

void (expression)
void expression

void , . expression - JavaScript, . , .

void , - . , .

, . , void(0) undefined, JavaScript.

html
<a href="javascript:void(0)"> ,    </a>

, :

html
<a href="javascript:void(document.form.submit())">
   ,    </a
>

.

in

in true, . :

propNameOrNumber in objectName

propNameOrNumber - , , objectName - .

in:

js
// 
var trees = new Array("redwood", "bay", "cedar", "oak", "maple");
0 in trees; //  true
3 in trees; //  true
6 in trees; //  false
"bay" in trees; //  false (    ,
//    )
"length" in trees; //  true (length    Array)

//  
"PI" in Math; //  true
var myString = new String("coral");
"length" in myString; //  true

//  
var mycar = { make: "Honda", model: "Accord", year: 1998 };
"make" in mycar; //  true
"model" in mycar; //  true

instanceof

instanceof true, . :

objectName instanceof objectType

objectName - , objectType, objectType - , , Date Array.

instanceof, . , .

, instanceof , theDay Date. theDay Date, , if.

js
var theDay = new Date(1995, 12, 17);
if (theDay instanceof Date) {
  //  
}

. .

.

. []
, () new
, ! ~ - + ++ -- typeof void delete
, * / %
, + -
<< >> >>>
, < <= > >= in instanceof
== != === !==
- &
-- ^
- |
- &&
- ||
() ?:
= += -= *= /= %= <<= >>= >>>= &= ^= |=
,

, , JavaScript.

, .

, : , , .

x = 7 . = x 7. 7.

3 + 4 . "+" 3 4 7.

JavaScript :

  • : , : 3.14159 ( ).
  • : , : "Fred" "234" ( ).
  • : true false ( ).
  • : JavaScript.
  • : .

JavaScript.

this

this . this , . this :

this["propertyName"]
this.propertyName

, validate value ; , :

js
function validate(obj, lowval, hival) {
  if (obj.value < lowval || obj.value > hival) alert(" !");
}

validate onChange , this , :

html
<b>   18  99:</b>
<input type="text" name="age" size="3"  />

"" ( ) . , , :

js
var a = 1;
var b = 2;
var c = 3;

//  
a + b * c; // 7
//    
a + (b * c); // 7

//      ,
//     
(a + b) * c; // 9

//   
a * c + b * c; // 9

- JavaScript, ECMAScript. 2 :

[for (x of y) x]

.

(for (x of y) y)

.

, . :

js
[for (i of [ 1, 2, 3 ]) i*i ];
// [ 1, 4, 9 ]

var abc = [ "A", "B", "C" ];
[for (letters of abc) letters.toLowerCase()];
// [ "a", "b", "c" ]

.

new

new . new :

js
var objectName = new objectType([param1, param2, ..., paramN]);

super

, . , .

js
super([arguments]); //   . super.functionOnParent([arguments]);

( ) ( ).

: , , , ( ) , push, splice, concat .. :

js
var parts = ["shoulder", "knees"];
var lyrics = ["head", ...parts, "and", "toes"];

:

js
function f(x, y, z) {}
var args = [0, 1, 2];
f(...args);

Web Proxy Viewer  |  New URL  |  Original Page