我有一个小问题:
我在javascript中有一个函数。
var func = function(variable)
{
result = variable;
}
如果我打电话
func(rabbit);
我需要结果是“兔子”。
我无法弄清楚如何将变量放在两个引号之间。
我有一个小问题:
我在javascript中有一个函数。
var func = function(variable)
{
result = variable;
}
如果我打电话
func(rabbit);
我需要结果是“兔子”。
我无法弄清楚如何将变量放在两个引号之间。
假设rabbit
应该是一个字符串:
func("rabbit");
如果rabbit
实际上是一个变量,那么就没有办法做到这一点,因为变量(意味着实现对变量的表示)实际上并没有传递给函数,而是它的值。
实际上有一种古老的方法来检索变量名。
var func = function(variable)
{
console.log(variable); // outputs "white"
console.log(arguments.callee.caller.toString().match(/func\((.*?)\)/)[1]); // outputs "rabbit"
}
rabbit = 'white';
func(rabbit);
你可以这样做
function whatever(input) {
return '\"' + input + '\"';
}
结果应该用引号引起来
我无法从您的问题中判断您是否希望“兔子”成为属性名称或值。所以这是两者:
var func = function(variable) {
window[variable] = 'abc'; // Setting the variable as what is passed in
window.result = variable; // Normal
}
func('rabbit'); // Will set both window.rabbit to 'abc', and window.result to 'rabbit'
不过,我不建议设置全局变量。更多信息
好的,我认为这是我的问题。现在我很确定那不是它,但我不知道那是什么。
我的函数中有这个:
defaults = {title :{'pan':-1,'left':0,'volume':0.30,'top':111}};
其中 title 是函数中的变量。但结果我得到的是默认标题,而不是存储在名为 title 的变量中的实际标题。你了解我吗?