javascript - 将数据放入对象中

标签 javascript arrays

var mypafgfr = [];
mypafgfr[0] = "tt";
mypafgfr[1] = "tt";
mypafgfr[2] = "tt";
var outputdata = {};

function ls() {
    console.log(mypafgfr[0]); {
        var gg = {};
        gg["n"] = mypafgfr[0];
        gg["image1"] = mypafgfr[1];
        gg["image2"] = mypafgfr[2];
        outputdata["folder"] = gg;
    }
    console.log(outputdata);
}

ls();

mypafgfr[0] = "yy";
mypafgfr[1] = "yy";
mypafgfr[2] = "yy";

ls();

在控制台中我期望看到

Object { n="tt",  image1="tt",  image2="tt"}
Object { n="yy",  image1="yy",  image2="yy"}

但是我得到了

Object { n="yy",  image1="yy",  image2="yy"}
Object { n="yy",  image1="yy",  image2="yy"}

我做错了什么?这是怎么发生的?

最佳答案

那是因为console.<a href="https://developer.mozilla.org/en-US/docs/Web/API/Console/log" rel="noreferrer noopener nofollow">log()</a>打印对象的引用。

你可以console.<a href="https://developer.mozilla.org/en-US/docs/Web/API/Console/dir" rel="noreferrer noopener nofollow">dir()</a>而是查看对象在调用时的外观。

您可以使用的另一个后备方法是使用 JSON.<a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify" rel="noreferrer noopener nofollow">stringify()</a>在记录它时,它不指向引用。

console.log(JSON.stringify(outputdata));

关于javascript - 将数据放入对象中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43082264/

相关文章:

javascript - 将 tr 和 td 包裹在 jQuery 中 ajax 调用的数据中

javascript - 如何为mosquitto安装ssl

c - Segmentation Fault 错误由于添加了一个小的 2d 数组

java - 调用方法以单行打印数组

javascript - 从 Javascript 中的对象列表中提取对象属性

javascript - 如何在java脚本中运行并获取弹出窗口中html提交按钮的值

c - 选择数组中的某个字符

javascript - 在 JavaScript 中使用数组?

javascript - 如何将带有两个函数参数的 jQuery 函数转换为 Coffeescript

javascript - learnyounode 练习 9 - 输出显示未定义、理解异步或逻辑的问题