jquery中定义数组并给数组赋值后转为json格式为[]问题的解决


一、问题描述:jquery定义一个空数组,并赋值,结果转为json格式后打印值为空

我原本是这样写的,但是show_data值一直为[]

var export_data = [];
export_data.key = $(".searchVal").val();
export_data.shop_id = $('select[name=shop_id]').val();
export_data.star_time = $('#start_time').val();
export_data.end_time = $('#end_time').val();

var show_data = JSON.stringify(export_data);

二、原因分析:这样的写法是new了一个数组对象,然后给数组对象设置属性,但是数组序列化的时候只会序列化数组中的元素,会忽略对象上的属性和值(https://segmentfault.com/q/1010000004567084)

三、解决:直接用一个空对象来存放属性就行。

      把var export_data = [] 改为:var export_data = {};


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM