如何在javascript中迭代数字列表
how to iterate list of numbers in javascript
我有一个动态列表,以的形式获取样本数据
var myStringArray = [10, 20];
var arrayLength = myStringArray.length;
for (var i = 0; i < arrayLength; i++) {
alert(myStringArray[i]);
}
如果我使用循环,它会给我像一样的数据
[
1
0
,
2
0
]
我需要数据作为
10
20
如果我复制并运行相同的代码,它将根据您的需要提供输出。无论你身在何处,获取数据的方式都是以字符串形式提供这些数据,即"[10,20]"。所以,现在它不是一个数组,而是一个包含10个字符([,1,0,等)的字符串。这就是为什么当你在循环中输出时会得到这些字符。
var myStringArray = [10, 20];
var arrayLength = myStringArray.length;
for (var i = 0; i < arrayLength; i++) {
alert(myStringArray[i]);
}
如果您从某些资源(例如ajax请求)中获得此值,则可以使用JSON.parse
将其转换为数组,因此您的代码变为:
var myString = "[10, 20]";
var myStringArray = JSON.parse( myString );
var arrayLength = myStringArray.length;
for (var i = 0; i < arrayLength; i++) {
alert(myStringArray[i]);
}
下面的代码考虑将数组字符表示为字符串。遍历每个字符。如果是左括号或右括号,则继续下一次迭代。,
表示一个完整的数字。否则,将整数字符连接为字符串类型:
var arrayLength = myStringArray.length;
var dat = "";
var arrayLength = myStringArray.length;
var dat = "";
for (var i = 0; i < arrayLength; i++) {
if(myStringArray[i] == ","){
alert(dat); // alert the completed value
dat = "";
} else if(myStringArray[i] == "[" || myStringArray[i] == "]"){
continue; // Move to the next iteration
} else {
dat += ("" + myStringArray[i]); //Concatenate strings
}
}
但是,在运行代码片段时,您的代码似乎可以正常工作。我想你可以用我的例子作为视觉辅助,因为我已经分解了各个步骤。
此外,正如Felix Kling在我的评论中指出的,您也可以使用JSON.parse()
:
JSON.parse(myStringArray, function(key,val) {
console.log(val);
});
这是一把小提琴:https://jsfiddle.net/7h4z6nsm/1/
相关文章:
- 如何在javascript中迭代数字列表
- JS:检查URL中的参数,然后迭代一个参数为var的函数
- 如何迭代Array.prototype函数
- 如何使用jquery迭代具有相同属性的html元素并查找onclick事件
- 在ejs-partial中对JSON对象进行迭代
- 如何在DataTables 2.1中迭代对象数组
- 使用递归属性迭代保留属性结构
- 正在停止.在jquery中的特定时间间隔内,每次迭代的每次执行
- 如果30秒未单击,请应用CSS一次,将其删除,然后重新迭代
- 主干-从模板中迭代的集合中获取特定的模型
- 在地图上迭代,我不会;除了数字,别无钥匙
- 迭代和选择那些唯一的数字(jQuery)
- 一次迭代多个数字
- 如何按照定义的顺序迭代以数字命名的对象属性
- 当我在jQuery应用程序中迭代javascript字典的键时,我得到的是数字而不是值
- 在每次迭代中减少一个数字,直到它精确地达到0
- JavaScript通过迭代添加数字
- 如何将数字与特定字符串关联,并使用该字符串在AngularJS中过滤迭代
- Javascript迭代器不能工作,但是硬编码的数字可以
- 我如何创建一个循环来迭代2个数字(年)