在javascript中获取对象而不是数组

时间:2015-12-03 16:40:55

标签: javascript

我有字符串数据[2]在测试中是“6766 44 9 19904 7772 13323 245 14 221”并尝试使用下面的代码将其转换为数组

console.log(typeof(data[2]),data[2].length,data[2]);
con = data[2].trim().split("\\s+"); // i.e. 66 44 9 19904 7772 13323 245 14 221
console.log(typeof(con),con.length,con);

但是要低于对象,请咨询

string 38  6766 44 9 19904 7772 13323 245 14 221
object 1 ["6766 44 9 19904 7772 13323 245 14 221"]

2 个答案:

答案 0 :(得分:9)

您正在尝试使用字符串来分割而不是正则表达式:

<td>更改为.split("\\s+")

对于数组,.split(/\s+/g)操作将返回typeof,因此您实际上看到的是包含单个项目的数组,这就是您的计数错误的原因。

如果要检查对象是否为数组,请使用"object"或兼容性:

Array.isArray

答案 1 :(得分:4)

这是不正确的,因为你用字符串分割但可以使用正则表达式:

con = data[2].trim().split("\\s+"); 

可能是

con = data[2].trim().split(/\s+/); 
相关问题