Javascript 基于用户输入声明多个作用域

Javascript 基于用户输入声明多个作用域,javascript,ruby-on-rails,angularjs,Javascript,Ruby On Rails,Angularjs,我的$scope为1到5个列表,具体取决于用户输入。在每个列表中将有一个项数组。我的list名称为list1,list2…我的问题是当我使用$scope.list=[]声明$scope时它当然不知道会是哪个列表。因为我是静态命名它们的,并且它们有5个限制,所以我知道我可以声明每个列表。我觉得有点太重,效率不高。是否有更好的方法根据用户输入声明每个列表 您可以动态地在$scope上声明一个属性,就像任何其他javascript对象一样 因此,$scope.myList=[]与$scope['myL

我的
$scope
为1到5个
列表
,具体取决于用户输入。在每个
列表中
将有一个
项数组
。我的
list
名称为
list1
list2
…我的问题是当我使用
$scope.list=[]声明
$scope
它当然不知道会是哪个列表。因为我是静态命名它们的,并且它们有5个限制,所以我知道我可以声明每个
列表
。我觉得有点太重,效率不高。是否有更好的方法根据用户输入声明每个
列表

您可以动态地在
$scope
上声明一个属性,就像任何其他
javascript
对象一样

因此,
$scope.myList=[]
$scope['myList']=[]

使用用户输入,从用户输入在范围上创建这些列表属性应该很简单

Psuedo代码可以是:

$scope.myButtonClick = function(){
     // where userInput is a number
     for (i = 0; i < userInput; i++){
         $scope['list' + (i+1).toString()] = [];
    }    
}
$scope.myButtonClick=function(){
//其中userInput是一个数字
对于(i=0;i
我喜欢它。我对Angular还是个新手,我没有想过要这么做。这一切都很好:)这也是你可以在普通的老式
javascript
中做的:)