nodejs返回意外的奇怪的输出
console.log(a,b)
以下是我上面的代码的输出
当我运行这个
for(var i=0; i<a.length; i++){ c[a[i]] = b[i]; }
但是当我做console.log(c)
时我得到了空白console.log(c)
这很奇怪,我做了一个小提琴我的逻辑是好的: http : //jsfiddle.net/8m97zk8d/
c
被声明为数组,数组不应该有string作为键,而是使用object。 声明c
为对象。
更新小提琴
var a = ['Child', 'Adult']; var b = [2, 6]; var c = {}; // Declare as empty Object for (var i = 0; i < a.length; i++) { c[a[i]] = b[i]; } console.log(c); document.getElementById('result').innerHTML = JSON.stringify(c, 0, 4);
<pre id="result"></pre>
您已经创build了一个数组c并为其指定了属性 。 看看那些属性是可用的日志:
console.log(c.Child); console.log(c.Adult);
如果您想以传统方式访问它们,请将c
重新定义为对象:
var a = [ 'Child' , 'Adult']; var b = [2,6]; var c = {}; for(var i=0; i<a.length; i++){ c[a[i]] = b[i] } console.log(c);