2015-09-06 3 views
0
;(function() { 
    var n = readline(), r = 0; 
    for (var i = 0; i < n; i++) 
     r += readline().split(' ').filter(function(v){ return v == 1;}).length > 1; 
    print(r);   
}).call(this); 

Почему мы добавим ; перед функцией и почему мы не ставим {} для контура for ?.Объясните яваскрипт код синтаксис

+2

';' просто для того, чтобы сделать сценарий отказоустойчивым, если он связан с другими скриптами. '{}' они являются необязательными, так как в цикле 'for' есть только одна строка – Andreas

+0

, это хорошо для функции, но для цикла, как вы сказали, {} являются необязательными, когда я пытаюсь поместить {}, для цикл разрушит всю функцию, не могли бы вы объяснить это? @Andreas –

+0

Если не внутри выражения или части определения функции, '{expr1; expr2; exprN;} 'является кодовым блоком. Вы можете использовать их почти в любом месте, они менее полезны в _JavaScript_, который не дает им область «var» (хотя они и получают «пробел»). Это означает, что вы часто видите только те, которые используются с 'if',' for', 'while' и т. Д. Используя их, вы можете группировать множество'; 'разделительных выражений и операторов. –

ответ

0

Скобки в цикле for опущены, поскольку это только одна строка кода, в этом случае они вам не нужны. ; является безопасным, если вы включите его в другие скрипты.

+0

, но я знаю, что вы можете их поместить или нет, так как вы хотите, поскольку это одна строка кода, поэтому, когда я пытаюсь их поместить, она не работает и не разбивает все функции, не могли бы вы объяснить мне это? –

+0

отредактировал мой ответ –

Смежные вопросы