2017-02-15 2 views
-1

В моей домашней работе javascript есть что-то подобное. Действительно ли это, или они не забыли поставить брекеты?Возможно ли иметь объект javascript без брекетов?

var squares = [], 
    SIZE = 3, 
    EMPTY = " ", 
    score, 
    moves, 
    turn = "X"; 
+6

Это не является объектом; это всего лишь куча переменных. – Ryan

+2

Это называется «Объявление множественной переменной» http://stackoverflow.com/questions/4166785/how-to-define-multiple-variables-on-a-single-line – bhspencer

+2

@syarul a), что является грубым. б) Я бы не стал спрашивать, в первую очередь, если бы меня не смутили. c) так вы учите язык, задавая «глупые» вопросы d) вместо того, чтобы тратить свое время на грубость, старайтесь быть полезным кому-то остальное. –

ответ

3

В вашем коде объявлено 6 переменных. Это не имеет никакого отношения к объекту.

squares представляет собой массив, size представляет собой число (3), empty является строкой ( ), score и moves являются undefined и turn является строкой (X)

Google javascript comma operator

РЕДАКТИРОВАТЬ : Объявить переменные, используемые в области

var doStuff = function() { 
    var i, 
     c = 2, 
     stuff = "stuff"; 


}; 

Вместо:

var doStuff = function() { 
    //some code 
    for(var i = 0; i <= 10; i++) { 
    // 
    } 

    //some code 
    var c = 2; 

    //some code 
    //some code 

    var stuff = "stuff"; 


}; 

Как это позволяет разработчикам увидеть все переменные, объявленные в этой области видимости с одного взгляда, вместо того, чтобы искать через блок, чтобы увидеть, что вары объявляются б/у.

+0

Я вижу, и это разрешено/нормально сделано? –

+0

Конечно, это разрешено, если бы не было синтаксической ошибки. Да, это довольно часто делается. Это (возможно) хорошая практика, чтобы объявить все переменные, которые вы будете использовать в заданной области в верхней части блока (см. Пример в редакции). – Adam

2

Они не забыли. Ваш учитель просто не повторял термин «var» для каждой переменной.

Это так же, как:

var squares = []; 
var SIZE = 3; 
var EMPTY = "&nbsp;"; 
var score; 
var moves; 
var turn = "X"; 
Смежные вопросы