我想存储以下信息:
伪代码
array(manager) = {"Prateek","Rudresh","Prashant"};
array(employee) = {"namit","amit","sushil"};
array(hr) = {"priya","seema","nakul"};
Run Code Online (Sandbox Code Playgroud)
我可以使用哪种数据结构?
Pas*_*TIN 35
在你的情况下,你可能会同时使用两者:
var data = {
'manager': ["Prateek","Rudresh","Prashant"],
'employee': ["namit","amit","sushil"],
'hr': ["priya","seema","nakul"]
};
Run Code Online (Sandbox Code Playgroud)
在这里,data是一个对象; 其中包含三个数组.
Pau*_*aul 13
一个东西:
var myobj = {
"manager": ["Prateek","Rudresh","Prashant"],
"employee": ["namit","amit","sushil"],
"hr": ["priya","seema","nakul"]
}
alert(myobj['employee'][1]); // Outputs "amit"
Run Code Online (Sandbox Code Playgroud)
小智 10
普通对象会:
var a = {
key1: "value1",
key2: ["value2.1","value2.2"]
/*etc*/
}
Run Code Online (Sandbox Code Playgroud)
访问:
a.key1
a["key1"]
Run Code Online (Sandbox Code Playgroud)
小智 6
你可以将它们存储在一个对象数组中:
var Staff = [
{ name: 'Prateek', role: manager },
{ name: 'Rudresh', role: manager },
{ name: 'Prashant', role: manager },
{ name: 'Namit', role: employee },
{ name: 'Amit', role: employee },
{ name: 'Sushil', role: employee },
{ name: 'Priya', role: hr },
{ name: 'Seema', role: hr },
{ name: 'Nakul', role: hr },
];
Run Code Online (Sandbox Code Playgroud)
添加ID属性也可能有用,具体取决于您的应用程序.即
{ id: 223, name: 'Prateek', role: manager },
Run Code Online (Sandbox Code Playgroud)
在 ES2015/ES6 中,你有Map类型。
使用 Map 你的代码看起来像
const map = new Map([
['manager', ['Prateek', 'Rudresh', 'Prashant']],
['employee', ['namit', 'amit', 'sushil']],
['hr', ['priya', 'seema', 'nakul']]
])
console.log(...map.entries())Run Code Online (Sandbox Code Playgroud)
要获取个人值,您可以使用Map.get('key')方法