我有一個在javascript中聲明的變量my_var。 如何獲取此變量的文字字符串值。獲取javascript變量的字面值
這背後的原因是我需要設計一個通用的功能是這樣的:
function (myvar){
$('#'+ "myvar").show();
var = ....;
}
我有一個在javascript中聲明的變量my_var。 如何獲取此變量的文字字符串值。獲取javascript變量的字面值
這背後的原因是我需要設計一個通用的功能是這樣的:
function (myvar){
$('#'+ "myvar").show();
var = ....;
}
var
是一個保留字javsacript你需要在功能更改參數的名稱。
function (myVariable){
$('#'+ myVariable).show();
}
var
是一個保留字(https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Reserved_Words)。
您需要使用別的東西,比如some_var
。 因此,給你:
function (some_var){
$('#'+ some_var).show();
}
我還沒有發現在JavaScript中使用反射的有效途徑。當我有同樣的要求,最後我用一個對象作爲參數,而不是
function test(args) {
for(var item in args) {
console.log(item);
console.log(args[item]);
}
}
test({
myvar1:"value of myvar1",
myvar2:"value of myvar2",
somenumber:50
});
這將打印
myvar1
值myvar1
myvar2
價值的myvar2
somenumber
編輯
更多相關的例子:
function doStuff (oMyVar){
for(var item in oMyVar) {
alert(item); // alerts "myvar"
alert(oMyVar[item]); // alerts 22
$('#'+ item).show(); // show the element
oMyVar[item] = 33; // changes 22 to 33
}
}
var v = {'myvar':22};
// before call
alert(v.myvar); // prints 22
// to call
doStuff(v);
// after call
alert(v.myvar); // prints 33
謝謝,你的解決方案似乎認爲myvar1和myvar2是json對象中的字符串。 – aladine
是的。該字符串是'myvar1'屬性的名稱。要獲取屬性的值,可以使用'args [myvar1]'這將獲得屬性的類型值 – jasonscript
@aladine,我已經更新了我的答案以包含更詳細的示例 – jasonscript
對不起,不明確,功能應該是函數(MYVAR){ $( '#' +「myvar」)。show(); myvar = ....; } – aladine
我想在同一個函數中同時使用變量myvar和字符串值「myvar」 – aladine
你想對字符串值做什麼? –