我想构建一个可能包含或不包含某些元素的数组,具体取决于用户角色。我可以在"构建时间"实现这一点,或者我是否必须首先创建没有条件元素的数组,然后使用splice选项手动添加它们?订单很重要!
这就是我想要实现的目标......:
var myList = [
{ obj1 },
{ obj2 },
if userRoleX==true {
{ obj3 },
}
{ obj4 },
];
有什么想法吗?
答案 0 :(得分:-3)
您可以根据需要构建包含元素的数组:
var i = 0;
var myList = [];
myList[i++] = obj1;
myList[i++] = obj2;
if (userRoleX) {
myList[i++] = obj3;
}
myList[i++] = obj4;
您甚至可以跳过索引或提供非数字索引,如下所示:
myList[42] = obj5;
myList['foo'] = 'bar';
Javascript的数组因此可以用作地图。您可以通过将条目设置为undefined
来“清除”条目。