2016-01-05 3 views
1

Я понимаю, что переменные в следующей функции будут доступны только в этой функции;Является ли объявление объявления переменных Javascript сокращающим переменными глобальными или локальными?

function(){ 
    var x; 
    var y; 
    var z = 3; 
}); 

Но я не знаю о нижеследующем сокращении. Каков их объем? (Y и Z)

function(){ 
    var x, y, z=3; 
}); 

И если есть что-то я могу пойти где-то читал об этом сокращенном просьба предоставить ссылку.

Спасибо.

+2

AFAIK Оба заявления по сути то же самое. – abhishekkannojia

+0

Если вы пишете как 'var a = b = c = 3', здесь b и c являются глобальной переменной. – Rajesh

+0

Ниже приведена полезная информация о «var»: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/var –

ответ

2

Оба представляют собой одно и то же, и, следовательно, переменные несут ту же область видимости. Они будут определены везде внутри этой функции.

Подробнее об этом можно узнать here.

0

Переменные, объявленные без ключевого слова var, являются глобальной переменной.

Не знаю причины этого. Но я проверил это.

Кроме того, в вашем втором примере переменные будут локальными для этой функции только в том случае, если вы использовали var для первой переменной и продолжаете ее с помощью запятой.

Попробуйте этот пример

var a=10: 
Function test() 
{c=11; var b=12; a=0;} 

    console.log(a); 
    test(); 
    console.log(a); 
    console.log(b); 
    console.log(c); 
+0

. Какова цель использования jquery (?) В вашем примере ? – zerkms

+0

Просто написал функцию для запуска onload. Это можно заменить. Я сделаю это. Спасибо :) –

+1

Почему вы даже хотите что-то запускать? Почему бы просто не поместить эти «console.log» сразу после того, как они не загрузились? – zerkms

0

В JavaScripts, Если присвоить значение переменной, которая не была объявлена, она автоматически становится глобальной переменной.

В вашем случае вы объявляете, затем присваивая значение (var x, y, z = 3).

Все они будут находиться только в местном масштабе.

Для получения дополнительной информации о сфере применения вы можете пройти W3School.

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

  • Нет связанных вопросов^_^