2017-01-31 79 views
0

我想創建像Vikas0,Vikas1,Vikas2,Vikas3等動態變量。如何在Angularjs,javascript和其他腳本語言中創建動態變量?

$.each(data, function(key, value){ 
    $scope.servicesDataList[key].list="Vikas"+key; 
    // will print Vikas0, Vikas1, Vikas2, Vikas3 
    console.log($scope.servicesDataList[key].list); 
}); 

現在我想創建動態變量。任何人都知道我該怎麼做到這一點。我希望我能夠闡述我的問題。

+0

您不能創建一個獨立的動態變量而是可以創建一個哈希表的VAR散列值,然後使用散列值[ $ scope.servicesDataList [key] .list] =「value」 –

+0

爲什麼不使用數組? – Arjang

+0

我在json中得到了一個結果,這就是爲什麼不使用數組 –

回答

1
You can use. 
the syntax would be = $scope["vikas"+key] = [] 

    $.each(data, function(key, value){  
     $scope["Vikas"+key] = value;  
     console.log($scope["vikas"+key].value); 
    will print Vikas0, Vikas1,Vikas2, Vikas3 

}); 
+0

所以它會創建Vikas0變量與值Vikas0 –

+0

名副其實將vikas0,vikas1 ...... vikansn –

+0

它可以容納任何值像數組,JSON ,字符串或任何 –

0

你可以使用對象數組作爲動態變量。

   Var conctVar="": 
       $.each(data, function(key, value){ 
       conctVar= conctVar + "{Vikas"+key + ":Vikas"+value+"},"; 
       }); 

       conctVar=conctVar.slice(0,-1); 
       $scope.FinalObject=JSON.parse(conctVar);// now the string will convert to a array object 

現在,您可以得到數組對象看起來像下面

$ scope.FinalObject.Vikas1,//值vikas1

$ scope.FinalObject.Vikas2,//值vikas2

$ scope.FinalObject.Vikas3,//值vikas3

$ scope.FinalObject.Vikas4 //值vikas4

0

它很容易做到儘量

var tempObject = {}; 
for (var i = 0; i < 5; i++) { 
    var keyId = 'key'+i; 
    var value = 'value'+i; 
    tempObject[keyId] = value; 
} 

這將返回

tempObject={ 
    key0: 'value0', 
    key1: 'value1', 
    key2: 'value2', 
    key3: 'value3', 
    key4: 'value4' 
}