2015-09-17 5 views
1

Можно ли преобразовать строку в имя переменной, в то время как в jQuery's document.ready?Преобразование строки в переменное имя в JQuery

Если бы я попробовать это в чистом JS

var boh = "blahblah"; 
console.log(window["boh"]); 

возвращает blahblah, а если я пойду с JQuery

$(document).ready(function() { 
    var boh = "blahblah"; 
    console.log(window["boh"]); 
}); 

возвращается undefined

+0

Что вы пытаетесь достичь? –

+0

Я получаю значения от json, и я хочу, чтобы эти значения стали переменными, которые я могу использовать в скрипте. я могу сделать это за пределами 'document.ready', но мне было любопытно, можно ли их получить изнутри. – ruggerocastagnola

+0

посмотрите на это и посмотрите, подскажите ли это, какой-нибудь намек http://stackoverflow.com/questions/4611190/passing-variables-in-jquery, иначе дайте мне знать –

ответ

1

попробовать это без объявления типа данных, как var.

boh = "Pure JS"; 
 
console.log(window.boh); 
 

 
$(document).ready(function() { 
 
    boh1 = "jQuery"; 
 
    console.log(window.boh1); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

переменные Javascript, что будут определены и объявлены без var находятся под window области.

+0

Спасибо большое! Итак, переменные, объявленные без var, имеют более широкий охват, правильно? – ruggerocastagnola

+0

да @ruggerocastagnola. Если вы объявляете их с var, то вы не можете использовать их как 'window.variableName', вы можете использовать только нас как регулярную переменную –

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

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