$$var(在 php 中)在 javascript 中等效
Posted
技术标签:
【中文标题】$$var(在 php 中)在 javascript 中等效【英文标题】:$$var (in php) Equivalent in javascript 【发布时间】:2014-12-04 02:32:09 【问题描述】:我有一个变量var commision_1 = 2000 ;var commision_2 = 4000;
和一个函数:
function updateCommission(period)
$("input:text[name='commission']").val('commision_'+period);
如果句点为 1,那么文本框的值为 2000;
我知道我可以使用数组,但我正在处理别人的代码,有没有办法解决它
就像在 php 中我会如何写 $x = 'commision_' .$period; echo $$x;
【问题讨论】:
这应该是数组或对象 @RoyalBg '我知道我可以使用数组,但我正在处理别人的代码' @George 所以问题应该得到解决,而不是到处乱跑。 它们仍然可以被推入一个数组。别人的(乱七八糟的)代码不是写更多乱七八糟的理由:) @RoyalBg & Niet,同意你们俩的观点。 【参考方案1】:您可以使用方括号表示法来获取变量变量。
如果这些变量是在窗口范围内定义的:
function updateCommission(period)
$("input:text[name='commission']").val(window['commision_' + period]);
话虽如此,定义编号变量(一直到 2000..!?)并不是一个好主意。一个数组就是为了这个目的而诞生的。我最好的答案是要求将这些变量重写为一个数组,但我明白这往往说起来容易做起来难。
【讨论】:
【参考方案2】:var commission_1 = 2000, commission_2 = 4000;
var name = 'commission_1';
console.log(window[name]);
【讨论】:
如果您在函数内部,则完全失败。 -1以上是关于$$var(在 php 中)在 javascript 中等效的主要内容,如果未能解决你的问题,请参考以下文章