【发布时间】:2018-03-23 12:54:41
【问题描述】:
我有一个类似的数组,
0: "City1"
1: {name="sds", age="asd",....}
2: {name="sweds", age="accxsd",....}
3: {name="sdqws", age="asssd",....}
4: "City2"
... and many more
所以我需要获取index[0]和index[4]之间的元素,
我可以使用typeof检查string和object
for(i=0; i<=arr.length; i++){
if(typeof arr[i] == 'string'){
... // need to find next element eith type string
}
}
有没有办法在数组中找到下一个值为字符串的元素,所以我可以获取它们之间的元素。
【问题讨论】:
-
你试过
arr[i+1]吗? -
继续循环,直到找到另一个字符串,然后,假设您记下了第一个和第二个字符串的索引,您可以轻松地从其间的所有索引中获取数据。但这是一个奇怪的数据结构......“中间”行不应该真的是“city1”对象的子属性吗?如果您可以更改数据结构,那将是一个更好的解决方案。例如
[ { "name": "city1", "people": [ { "name": "sds", age: "asd" }, { "name": "sweds" ... ] }, { "name": "city2", "people: [....etc
标签: javascript arrays typeof