jQuery - 未捕获的TypeError:对象0,0没有方法'split' - 尝试在对象上split()

时间:2012-05-07 00:32:23

标签: javascript jquery

我只是想用逗号分隔object作为转发器。我知道有一些东西需要拆分,因为当我自己输出它时......它成功地说(通过一个循环)1,1和其他数字。

这是一个JSFiddle。 http://jsfiddle.net/weka/5Xtwj/

如果你在JavaScript部分删除了最后两行,它将正常工作,因为我不想得到数组的X

var getX = path[index].split(",");
$("#debug").append("X: " + getX[0]);

PS - 它使用此pathfinding script作为外部库。但那不是问题。

4 个答案:

答案 0 :(得分:2)

你可以使用 split 只使用字符串,正如你在console.log上看到的那样,它是一个数组数组,所以这就是你得到这个错误的原因。 您可以使用以下代码获取X值:

使用 slice

var getX = path[index].slice(0);

或者:

var getX = path[index][0];

答案 1 :(得分:1)

错误消息告诉您

Object 0,0 has no method 'split' 

它是一个对象[aka Array],你表现得像是一个字符串。你为什么需要拆分它?参考它。

var first = path[index][0];

答案 2 :(得分:1)

split只能用于字符串。每个path[index] 一个字符串,它是一个数组(查看控制台输出)。你看到0,0,因为数组被强制转换为字符串进行打印。

解决方案:而不是使用path[index].split(",")[0],只需使用path[index][0]

enter image description here

答案 3 :(得分:1)

path[index]的值不是字符串,而是数组。

你不能拆分它,你也不需要拆分它。您可以立即使用它:

var getX = path[index];
$("#debug").append("X: " + getX[0] + "\n");

http://jsfiddle.net/Guffa/5Xtwj/1/