2 daliuliu 01 daliuliu_01 于 2017.09.14 11:20 提问

js中数组里有元素但是长度为0

图片说明
图片说明

8个回答

TianGaojie123abc
TianGaojie123abc   2017.09.14 11:40
已采纳

图片说明

q213546879
q213546879   2017.09.14 11:25

你这里ajax得到的data2.root不是数组,是json

q213546879
q213546879   2017.09.14 11:25

对于后端来说,数组就是我们前端所谓的json

u010015007
u010015007   2017.09.14 11:53

你可以吧console放在success里边看结果

fenghui187
fenghui187   2017.09.14 12:24

感觉应该是ajax异步请求的问题,在执行$.ajax之前先执行了console.log语句。也就是说你是先打印了console,然后又进行的push

sunny_desmond
sunny_desmond   2017.09.14 13:37

可以的,解决了就好了~~~

Beamon__
Beamon__   2017.09.14 22:50

建议先打印下data2看看

HUSHILIN001
HUSHILIN001   2017.09.15 09:24

首先,你声明的是【】,这说明你声明的是数组,而你最后使用push的时候,由于放进去的是对象,是一个object,而数组在确定长度的时候,他所做的,是将所有的
“下标”转化为string,如果是由数字,如1,2,3的时候,他才会长度加一,所以,你这里有东西,也加进去了,但是下标不是数字,就length为0,
如果你要长度,你可以这么加数据:str[str.length]=a;

Csdn user default icon
上传中...
上传图片
插入图片