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之后却没有这两个键值对呢?

javascript对象 node.js json

belbel 9 years, 8 months ago

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

wwQww answered 9 years, 8 months ago

Your Answer