让我们说有一个类别和奖品数据的摄影比赛。我们可以将数据存储为数组或对象。我只是想知道哪个更好。
数组示例:
var contest = {
'name': 'Photo Contest',
'categories': [
{'name': 'landscape', 'type': 'single'},
{'name': 'portrait', 'type': 'single'},
{'name': 'food', 'type': 'single'},
],
'prizes': [
{'name': 'winner of the year', 'count': 1, 'cat': ''},
{'name': '1st', 'count': 1, 'cat': 'landscape'},
{'name': '2nd', 'count': 3, 'cat': 'landscape'},
{'name': '3rd', 'count': 5, 'cat': 'landscape'},
{'name': '1st', 'count': 1, 'cat': 'portrait'},
{'name': '2nd', 'count': 3, 'cat': 'portrait'},
{'name': '3rd', 'count': 5, 'cat': 'portrait'},
{'name': '1st', 'count': 1, 'cat': 'food'},
{'name': '2nd', 'count': 3, 'cat': 'food'},
{'name': '3rd', 'count': 5, 'cat': 'food'}
]
}
对象示例:
var contest = {
'name': 'Photo Contest',
'categories': {
'landscape': {'type': 'single'},
'portrait': {'type': 'single'},
'food': {'type': 'single'},
},
'prizes': {
'winner of the year': {'count': 1, 'cat': ''},
'landscape 1st': {'count': 1, 'cat': 'landscape'},
'landscape 2nd': {'count': 3, 'cat': 'landscape'},
'landscape 3rd': {'count': 5, 'cat': 'landscape'},
'portrait 1st': {'count': 1, 'cat': 'portrait'},
'portrait 2nd': {'count': 3, 'cat': 'portrait'},
'portrait 3rd': {'count': 5, 'cat': 'portrait'},
'food 1st': {'count': 1, 'cat': 'food'},
'food 2nd': {'count': 3, 'cat': 'food'},
'food 3rd': {'count': 5, 'cat': 'food'},
}
}
我正在制作一般的竞赛管理系统。管理员用户可以通过输入一些信息(具有不同的类别和奖品)来创建新的比赛。前端页面将获取这些信息并显示。
这些数据可能还有其他用途,例如记录获胜者(比赛结束后)或搜索。
答案 0 :(得分:0)
取决于您的预期用例。如果您想显示结果,使用数组更有意义。如果要创建一个过滤器对话框,让用户只找到特定的照片子集,请使用对象表示,因为它更好地显示了结果的基础结构。
答案 1 :(得分:0)
这取决于您之后使用这些代码的方式。
如果您想在以后使用这些对象访问函数,请创建类和对象。
如果这是一个小程序,只需使用数组。除非需要,否则不要使用类或对象。如果你正在写一个 在较大的应用程序中的小模块,没有其他东西需要 与您的代码接口,也许一个数组就足够了