console.log无法输出json的某些属性

新手上路,请多包涵

因为需要合并两个没有重复键的json所以我写了一个简单的合并函数:

var $extend = function(a, b) {
    var target = b;
    for (var i in a) {
        target[i] = a[i];
    }
    return target;
}

然后,我利用这个函数我进行了下面合并:

console.log(_doc);
var toQuery=$extend(_doc,{'ak':config.ak,'output':'json'});
//get result
console.log('toQuery.output',toQuery.output);
console.log('toQuery.ak',toQuery.ak);
console.log('toQuery',JSON.stringify(toQuery));

然而, 结果输出很诡异。

图片描述
toQuery.output与toQuery.ak的确是有值的,但是为什么stringify之后却没有这两个键值对呢?

阅读 5.4k
1 个回答

我在自己的浏览器上试了一下题主的代码,输出是正常的。
题主能否给一个测试页面?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题