我想从JavaScript中动态创建另一个数组。 我有一个字符串,这是一个数学文字表达式,就像这个'2a + 3b + 4a + 5c':我只是想将它拆分成只有数字的文字部分的数组(例如'a,b,a, C')。JavaScript:动态创建数组
我试着用下面的代码来做到这一点:
var expression = '2a + 3b + 4a + 5c';
var NumbersArray = expression.split(' + '); /* NumbersArray = 2a,3b,4a,5c */
alert('So far it's working!');
var LettersArray = new Array();
for (var i = 0; i < NumbersArray.length; i++) {
eval('var LettersArray[' + i + '] = NumbersArray[' + i + '].replace(/[0-9]/g,"");');
alert(eval('LettersArray[' + i + ']'));
}
但它不工作! 我该如何解决它?
你在第一个'alert'中有语法错误,撇号需要转义。 – Jasper
它是复制粘贴错误,还是你的提醒实际上是这样的引号?因为这会导致语法错误(“it's”的撇号正在结束字符串)。另外,你为什么使用eval? – Chad
SO代码荧光笔已经提供了答案。 – mishik