相关疑难解决方法(0)

在JavaScript中使用动态变量名称

在PHP中你可以做这样惊人/可怕的事情:

$a = 1;
$b = 2;
$c = 3;
$name = 'a';
echo $$name;
// prints 1
Run Code Online (Sandbox Code Playgroud)

有没有办法用Javascript做这样的事情?

例如,如果我有一个var name = 'the name of the variable';可以获得名称变量的引用name

javascript dynamic-variables

320
推荐指数
10
解决办法
45万
查看次数

Javascript:从变量本身引用变量名

我想创建一个快速函数,它将console.log变量名称和值.我希望在控制台中显示该函数的结果:foo: bar.

我对该函数的基本思想如下:

function varlog(var_name)
{
    console.log(var_name + ": " + eval(var_name));
}
Run Code Online (Sandbox Code Playgroud)

我打电话的是:

function someRandomFunction()
{
    var foo = "bar";
    // ... some stuff happens
    varlog("foo");
}
Run Code Online (Sandbox Code Playgroud)

如果foo是全局的,则此方法有效,但在提供的示例中不起作用.另一个只能全局运作的选择是使用window[var_name]而不是可怕的eval.

我不认为我问的是可能的,但我想我会把它扔出去.

我花了很多时间试图变懒.我目前的方法是console.log('foo: ' + bar);正常的.但现在我只想知道这是否可行.

我在搜索/创建现有内容时引用的其他一些问题:

-

编辑:varlog(foo)如果名称"foo"可以从变量派生,我很乐意打电话.

javascript

21
推荐指数
2
解决办法
1万
查看次数

Javascript,使用包含其名称的字符串引用变量?

有没有办法用包含其名称的字符串引用Javascript变量?

例:

var myText = 'hello world!';
var someString = 'myText';

//how to output myText value using someString?
Run Code Online (Sandbox Code Playgroud)

javascript variables syntax

19
推荐指数
2
解决办法
3万
查看次数

如何在Javascript中使用字符串作为变量名?

可能重复:
有没有办法使用包含变量名称的字符串访问javascript变量?
JavaScript:通过名称字符串动态获取局部变量

一个简单的代码来说明我的问题 -

var chat_1 = "one";

var chat_2 = "two";

var id = "1";

var new = ?? variabalize( 'chat_' + id ) 
Run Code Online (Sandbox Code Playgroud)

我希望变量new赋值变量 - chat_1是"one"

javascript

4
推荐指数
2
解决办法
3万
查看次数

如何在Javascript中使用for调用动态命名的方法

我有两个动态命名的JavaScript函数..

function a1(){
   //some codes
}

function a2(){
   //some codes
}

function a3(){
   //some codes
}
Run Code Online (Sandbox Code Playgroud)

这些函数上面由PHP生成肯定..

<?php 
  for($i = 1; $i <= $load_period->count; $i++){ 
?>
  <script type="text/javascript">
  function a<?php echo $i;?>(){
     //javascript functions
  }
  </script>
<?php 
  } 
?>
Run Code Online (Sandbox Code Playgroud)

现在我必须调用这两个函数..

for(var i= 1; i <= 3; i++){
   // here the solution code .. 
   // doesn't work >> a+i+();
}
Run Code Online (Sandbox Code Playgroud)
  • 注意1:它不适用于"a + i +();" .
  • 注2:我不想使用"EVAL"语法

谢谢你的解决方案..

javascript jquery dynamic-function

0
推荐指数
1
解决办法
88
查看次数