【发布时间】:2018-02-04 03:50:46
【问题描述】:
是否可以将 JavaScript 对象用作一种小型数据库?当我在 JS 中编码时,我经常发现自己需要一种数据库结构,但使用 MySQL(或类似)这样的实际数据库感觉有点过头了。
例如,假设我需要将此数据构造为 JS 对象:
对象的想法:要出售的东西
要出售的物品:车库里的垃圾
对象结构:列出所有项目包括项目名称、项目条件和项目值
为了把它变成一个 JS 对象,我可能会写:
var stuffToSell = {};
那么我的第一个项目可能看起来像:
var stuffToSell = {
item : "Coffee Maker",
condition : "Good",
price : 5
};
现在对我来说,这似乎是在正确的轨道上,直到我添加另一个项目,我最终不得不在同一个 JS 中再次使用属性 item、condition 和 price对象-感觉不对? ——或者是吗?在这一点上,我的大脑一直在喊“ARRAY!”这个词。对我来说,但我只是看不到如何使用对象内的数组或数组内的对象来实现我想要的。
我的最终目标(在这个简化的示例中)是能够使用面向对象的语法来访问某些项目并找出有关项目的特定信息,例如 price、condition 等。例如,如果我想知道"coffee maker" 的价格,我想写如下内容:
stuffToSell["coffee maker"].price
...那么上面的结果应该是5。
我觉得我在正确的轨道上,但我认为我错过了数组部分?有人可以告诉我我错过了什么,或者我做错了什么!如果在同一个 JS 对象中有重复的属性名称是错误的?例如,是否可以:
var stuffToSell = {
item : "Coffee Maker",
price : 5,
item : "Mountain Bike",
price : 10,
item : "26 inch TV",
price : 15
};
...这似乎是错误的,因为 JS 怎么知道哪个price 与哪个item 搭配??
提前致谢:)
【问题讨论】:
标签: javascript arrays database object