[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/ru/docs/Web/JavaScript/Guide/Grammar_and_types#unicode [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

, , .

In this article

JavaScript Java, , Awk, Perl Python.

JavaScript Unicode. , Frh ("" -) .

js
var Frh = "foobar";

, frh Frh JavaScript .

JavaScript statements (;). (space), (tab) (newline) (whitespace). JavaScript , (tokens), , , . ECMAScript (ASI), (statements). , , . , Lexical Grammar.

, C++ :

js
// ,   .

/* ,
     .
 */

/*   /*    */ SyntaxError */

JavaScript :

var

, .

let

, .

const

, .

. identifiers .

JavaScript , (_) ($); (0-9). JavaScript , "A" "Z" ( ) "a" "z" ( ).

ISO 8859-1 Unicode, , . Unicode .

: Number_hits, temp99, _name.

:

, var let , undefined.

ReferenceError:

js
var a;
console.log("The value of a is " + a); //  a undefined

console.log("The value of b is " + b); //Uncaught ReferenceError: b  

console.log("The value of c is " + c); //  c undefined
var c;

console.log("The value of x is " + x); //Uncaught ReferenceError: x  
let x;

undefined, , . input , if true:

js
var input;
if (input === undefined) {
  doThis();
} else {
  doThat();
}

undefined false, . , myFunction, .. myArray :

js
var myArray = [];
if (!myArray[0]) {
  myFunction();
}

undefined NaN, :

js
var a;
a + 2; // NaN

null 0 false :

js
var n = null;
console.log(n * 32); //    0

, , .. . , , .. .

ECMAScript 6 JavaScript ; , , _ _( ), . , 5, .. x ( ), x, , if:

js
if (true) {
  var x = 5;
}
console.log(x); // 5

, let, ECMAScript 6:

js
if (true) {
  let y = 5;
}
console.log(y); // ReferenceError

JavaScript , , , . (hoisting) ; JavaScript . , , , undefined:

js
/*
 * Example 1
 */
console.log(x === undefined); // true
var x = 3;

/*
 * Example 2
 */
var myvar = "my value";

(function () {
  console.log(myvar); // undefined
  var myvar = "local value";
})();

, :

js
/*
 * Example 1
 */
var x;
console.log(x === undefined); // true
x = 3;

/*
 * Example 2
 */
var myvar = "my value";

(function () {
  var myvar;
  console.log(myvar); // undefined
  myvar = "local value";
})();

- , var , . .

ECMAScript 2015, let (const) . , ReferenceError. " " , .

js
function do_something() {
  console.log(foo); // ReferenceError
  let foo = 2;
}

: , , .

js
/*   */
foo(); // "bar"

function foo() {
  console.log("bar");
}

/*     */
baz(); // TypeError: baz is not a function

var baz = function () {
  console.log("bar2");
};

. - window, , window.variable:

js
window.foo = "bar";

, , window frame window frame, window frame. , phoneNumber , iframe parent.phoneNumber.

, , const. , : , $ , .

js
const PREFIX = "212";

. .

, , , , let. const , .

, . TypeError:

js
//   
function f() {}
const f = 5;

//    
function f() {
  const g = 5;
  var g;

  // - 
}

, ,

js
const MY_OBJECT = { key: "value" };
MY_OBJECT.key = "otherValue";

ECMAScript :

, . . , .

JavaScript . , , , . , , :

js
var answer = 42;

, :

js
answer = "Thanks for all the fish...";

JavaScript , .

, +, JavaScript . :

js
x = "The answer is " + 42; // "The answer is 42"
y = 42 + " is the answer"; // "42 is the answer"

JavaScript . :

js
"37" - 7; // 30
"37" + 7; // "377"

, , , , :

parseInt . ( radix).

" ":

js
"1.1" + "1.1"; // "1.11.1"
(+"1.1") + (+"1.1"); // 2.2
//    ,         .

JavaScript. , . :

, , ( [] ). , , , , .

coffees , :

js
var coffees = ["French Roast", "Colombian", "Kona"];

: , . , .

, JavaScript , , . , , , , .

Array. , Array .

array

array. , undefined. :

js
var fish = ["Lion", , "Angel"]; // ["Lion", undefined, "Angel"]

2 (fish[0] - "Lion", fish[1] - undefined, fish[2] - "Angel").

, . , 3. myList[3]. .

: , .

js
var myList = ["home", , "school", ]; // ["home", undefined, "school"]

, myList[0] myList[2] undefined:

js
var myList = [, "home", , "school"]; // [undefined, "home", undefined, "school"]

, myList[1] myList[3] undefined. .

js
var myList = ["home", , "school", ,]; // ["home", undefined, "school", undefined]

JavaScript . , , , undefined .

(Boolean) : true false.

true false true false Boolean. Boolean - . , Boolean.

, , .

  • .
  • , . 0-7.
  • 0x ( 0X) , . 0-9 a-f A-F.
  • 0b ( 0B) , . 0 1.

:

0, 117  -345 (  )
015, 0001  -077 (  )
0x1123, 0x00111  -0xF1A7 (  )
0b11, 0b0011  -0b11 (  )

.

:

  • , ( "+" "-", ),
  • ("."),
  • ( ),
  • .

"e" "E", , . , "e" ( "E").

:

[(+|-)][digits][.digits][(E|e)[(+|-)]digits]

:

3.14
-3.1E+12
-.3333333333333333333
.1e-23

, , ( {} ). , .. , , "{" .

myCar car "Saturn", getCar CarTypes("Honda"), special Sales:

js
var Sales = "Toyota";

function CarTypes(name) {
  if (name == "Honda") {
    return name;
  } else {
    return ",    " + name + ".";
  }
}

var car = { myCar: "Saturn", getCar: CarTypes("Honda"), special: Sales };

console.log(car.myCar); // Saturn
console.log(car.getCar); // Honda
console.log(car.special); // Toyota

, . :

js
var car = { manyCars: { a: "Saab", b: "Jeep" }, 7: "Mazda" };

console.log(car.manyCars.b); // Jeep
console.log(car[7]); // Mazda

, . JavaScript , . ( [] ), ( . ):

js
var unusualPropertyNames = {
  "": "An empty string",
  "!": "Bang!"
}
console.log(unusualPropertyNames."");   // SyntaxError: Unexpected string
console.log(unusualPropertyNames[""]);  // "An empty string"
console.log(unusualPropertyNames.!);    // SyntaxError: Unexpected token !
console.log(unusualPropertyNames["!"]); // "Bang!"

ES2015 foo: foo, , . , , .

js
var obj = {
  // __proto__
  __proto__: theProtoObj,
  //    handler: handler
  handler,
  // 
  toString() {
    //  
    return "d " + super.toString();
  },
  //    
  ["prop_" + (() => 42)()]: 42,
};

:

js
var foo = { a: "alpha", 2: "two" };
console.log(foo.a); // alpha
console.log(foo[2]); // two
// console.log(foo.2);            // SyntaxError: Unexpected number
// console.log(foo[a]);           // ReferenceError: a is not defined
console.log(foo["a"]); // alpha
console.log(foo["2"]); // two

RegExp

regexp - . regex:

js
var re = /ab+c/;

, ( " ) ( ' ) . , .. , . :

"foo"
'bar'
"1234"
"one line \n another line"
"John's cat"

String : JavaScript String, , String. String.length :

js
console.log("John's cat".length);
//    ,  .
//       10.

ES2015 . . Perl, Python . , , , .

js
//      string
`In JavaScript '\n' is a line-feed.`;

//  
`In JavaScript this is
 not legal.`;

//  
var name = "",
  time = "";
` ${name},   ${time}?`;

//   HTTP ,      
POST`http://foo.org/bar?a=${a}&b=${b}
     Content-Type: application/json
     X-Credentials: ${credentials}
     { "foo": ${foo},
       "bar": ${bar}}`(myOnReadyStateChangeHandler);

, String. String, String.

.

js
"one line \n another line";

, .

\b (Backspace)
\f (Form feed)
\n (New line)
\r (Carriage return)
\t (Tab)
\v (Vertical tab)
\'
\"
\\ (Backslash)
\XXX Latin-1, XXX 0 377. , \251 ( ).
\xXX Latin-1, XX 00 FF. , \xA9 ( ).
\uXXXX Unicode, XXXX. , \u00A9 ( ).
\u{XXXXX} UTF-32BE. , \u{2F804} , \uD87E\uDC04.

, , . (deprecated) .

, . . :

js
var quote = "He read \"The Cremation of Sam McGee\" by R.W. Service.";
console.log(quote); // He read "The Cremation of Sam McGee" by R.W. Service.

, . :

js
var home = "c:\\temp"; // c:\temp

. . :

js
var str =
  "this string \
is broken \
across multiple\
lines.";
console.log(str); // this string is broken across multiplelines.

JavaScript "heredoc" ( ), , :

js
var poem =
  "Roses are red,\n\
Violets are blue.\n\
I'm schizophrenic,\n\
And so am I.";

. JavaScript, :

.


Web Proxy Viewer  |  New URL  |  Original Page