javascript - 没有从对象中获取数组

标签 javascript jquery json

我正在使用 map 方法将对象转换为数组。以下代码中存在什么问题?

var data = {
    "productName": "fsdfsdf",
    "productDesc": "",
    "category": null,
    "categoryName": "",
    "style": null,
    "styleName": "",
    "substyle": null,
    "substyleName": "",
    "store": null,
    "storeName": "",
    "stand": null,
    "standName": "",
    "rack": null,
    "rackName": "",
    "roll": null,
    "rollName": "",
    "color": null,
    "width": "",
    "widthunit": "meter",
    "length": 0,
    "lengthunit": "meter",
    "pieces": "",
    "cutofquantity": "",
    "estimatedConsumption": ""
}

var key = $.map(data, function(value, index) {
    return index;
});
var value = $.map(data, function(value, index) {
    return value;
});

console.log(value)

请引用this JSFiddle 的实例。

最佳答案

因为您将 length: 0 作为您的属性之一,jQuery 认为该对象是一个数组而不是一个对象。

然后它循环遍历从 0 到 0(不包括)的数字索引并生成一个零长度数组。

关于javascript - 没有从对象中获取数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34675823/

相关文章:

javascript - KineticsJs 自动调整 Canvas 大小

javascript - 如何改进JS(Jquery)代码?一个简单的下拉菜单

javascript - 通过 id 获取元素,然后获取 class 属性

javascript - 如何在 Swiper Js 中更改幻灯片时禁用单击和触摸/鼠标拖动

javascript - HHML 中的对象中的 JSON 对象

javascript - CodeIgniter 更新一行两张表

javascript - $ ("class","class") 是什么意思?

javascript - 动态添加的 Html 输入页面选项卡按钮不起作用

c# - 如何读取DataContractJsonSerializer序列化的DateTimeOffset

java - 使用 Json-simple 从文件中解析对象数组