对象字面量没有.length
您可以使用以下方式计算属性这个方法 http://jsfiddle.net/cVs5B/:
var count = 0;
for (i in jsonString) {
if (jsonString.hasOwnProperty(i)) {
count++;
}
}
alert(count); //count shall have length for you
OR
由于您的数组没有数字索引(从 0 开始),因此假设您使用了关联数组,因此他们抛弃了物品的对象而不是一个项目数组.
要将它们转换为数字索引,您所要做的就是使用数组值 http://php.net/manual/en/function.array-values.php在将它们编码为 json 之前:
json_encode(array_values($array));
那么 json 将是一个数组..那么你可以使用长度 http://jsfiddle.net/bAn9J/
由此:
Array(
[1] => Array(
[product_id] => 1
[product_model] => HFJ5G1.5
[product_type] => plat
[product_return] => graviteits
)
[2] => Array(
[product_id] => 2
[product_model] => HHJ5S2.5
[product_type] => holle plunjer
[product_return] => veer
)
);
使用 array_values() 就变成这样,注意每个项目的索引:
Array(
[0] => Array(
[product_id] => 1
[product_model] => HFJ5G1.5
[product_type] => plat
[product_return] => graviteits
)
[1] => Array(
[product_id] => 2
[product_model] => HHJ5S2.5
[product_type] => holle plunjer
[product_return] => veer
)
);
然后编码为json并存储到jsonString:
jsonString = [
{
"product_id": "1",
"product_model": "HFJ5G1.5",
"product_type": "plat",
"product_return": "graviteits"
},
{
"product_id": "2",
"product_model": "HHJ5S2.5",
"product_type": "holle plunjer",
"product_return": "veer"
}
];
alert(jsonString.length);