使用javascript获取动态创建的变量
Get dynamically created variable with javascript
我用php创建了几个javascript数组,调用如下:
pricesArray_230
pricesArray_350
...etc...
我现在想访问这些数组,但我不知道如何包含动态部分。
我的代码现在不起作用:
newPrice = pricesArray_+productId+[currentSimpleProduct][0];
其中productId是动态部件,表示230、350或任何其他数字。
你们中有人知道如何动态调用这些数组吗?
如果您在浏览器中,并且变量在全局范围内,则可以使用括号表示法,如:
foo = window['pricesArray_'+productId[currentSimpleProduct][0]]
为了避免eval
,假设pricesArray_*
是全局变量,可以使用:
window['pricesArray_' + productId][currentSimpleProduct][0]
更好的是,更新动态生成的代码,使其创建一个对象或数组,而不是变量:
var pricesArrays = {
'230': {...},
'350': {...},
// etc
}
您必须使用eval
:
newPrice = eval('pricesArray_' + productId)[currentSimpleProduct][0];
然而,eval可能会有问题,所以我建议使用对象。这将需要您更改PHP代码以输出如下内容:
var arrays = {
product230 : [], // array here
product350 : [] // array here, etc.
}
然后你可以使用:
newPrice = arrays['product' + productId][currentSimpleProduct][0];
相关文章:
- 从Javascript和Php变量创建Html模板文档
- 在JavaScript中,如何修复元素显示和变量创建之间的初始差异
- 使用javascript中的捕获组从变量创建regex
- 使用javascript中的php变量创建XML
- 将字符串与integer连接,用作jquery中的变量(创建动态变量)
- 如何使用局部变量创建全局变量
- 使用javascript中的变量创建自定义URL
- 基于变量创建json对象id
- 从javascript变量创建一个数组
- 通过传递 PHP 变量创建计时器
- Uncaught TypeError:使用变量创建对象时,undefined不是函数
- 从 2 个变量创建对象的缩写
- 为遗漏的变量创建计数器
- Rails Javascript haml 变量创建
- Javascript:是为所有变量创建的闭包,还是只为内部函数可能使用的变量创建的闭包
- 使用变量创建一个对象文字,如何只获取其值
- JavaScript原型变量创建引用
- 使用php变量+javascript变量创建一个href-url
- Fabric.js:只使用一个变量创建多个对象有问题吗
- 将变量创建到路径JSON是由jQuery执行的操作