【发布时间】:2014-12-07 22:31:37
【问题描述】:
我正在尝试移植以下代码以使用 JSON 文件 http://malamas.com/jsuc/jsuc.html 目前我已经设法采用了“单位”和“因素”部分:
property[0] = "Acceleration";
unit[0] = new Array("Meter/sq.sec (m/sec^2)", "Foot/sq.sec (ft/sec^2)", "G (g)", "Galileo (gal)", "Inch/sq.sec (in/sec^2)");
factor[0] = new Array(1, .3048, 9.806650, .01, 2.54E-02);
并将它们放入 JSON 行:
var text = '{"Accelleration": { "unit":"\\"Meter/sq.sec (m/sec^2)\\", \\"Foot/sq.sec (ft/sec^2)\\", \\"G (g)\\", \\"Galileo (gal)\\", \\"Inch/sq.sec (in/sec^2)\\"", "factor":"1, .3048, 9.806650, .01, 2.54E-02"}}'
var obj = JSON.parse(text);
我可以像这样输出字符串
"Meter/sq.sec (m/sec^2)", "Foot/sq.sec (ft/sec^2)", "G (g)", "Galileo (gal)", "Inch/sq.sec (in/sec^2)"
但我希望能够通过这样做将其输入到顶部代码中:
property[0] = "Acceleration";
unit[0] = new Array(obj.Accelleration.unit);
factor[0] = new Array(obj.Accelleration.factor);
不幸的是,当我这样做时,unit[0][0] 会出现同样的情况;
"Meter/sq.sec (m/sec^2)", "Foot/sq.sec (ft/sec^2)", "G (g)", "Galileo (gal)", "Inch/sq.sec (in/sec^2)"
我怎样才能让它像一个数组一样工作?谢谢!
【问题讨论】:
-
为什么要先将其存储为字符串?如果您在 javascript 中执行此操作,则可以直接存储对象,而无需将对象包装在字符串中。
-
正如@Jhect 所说,使用一个对象。
-
我能举例说明在这种情况下如何做到这一点吗?我对 JS 和 JSON 文件的理解极其有限。
-
如果你一直用两种不同的方式拼写acceleration,你的代码会出现一些问题。
-
是的,我确定。谢谢你:D
标签: javascript arrays json