2014-09-03 54 views
0

我得到了一個數組如何格式化的問題,這是我的例子:angularjs推字符串數組

var code = 743919183; 
var tempPost = '["'+code+'"]'; 
$scope.arrayTwo = []; 
$scope.arrayTwo.push(code); 

在控制檯時:

tempPost會喜歡這樣的輸出: ["743919183"]

$scope.arrayTwo,在雙引號之前和之後都有空格 [ "743919183" ]

我想要$scope.ArrayTwo陣列的格式與tempPost一樣,我該怎麼做?

+2

你爲什麼想這樣做?目的是什麼? – bmleite 2014-09-03 10:37:42

回答

2

我不知道你想實現什麼,但:現在

var code = 743919183; //This is an integer to convert to string just call .toString() 
var tempPost = '["'+code+'"]'; //This is a string that has a value equal to "["743919183"]", this is not an array. 
$scope.arrayTwo = [] //This is a an empty array; 
$scope.arrayTwo.push(code); //This will add a new item to the array in this case the integer code. Your array would look like [743919183]. 

,如果你想要的是有一個項目是代碼爲字符串你應該做一個數組:

var code = "743919183"; 
$scope.arrayTwo = [code]; 

或者:

var code = 743919183; 
$scope.arrayTwo = [code.toString()]; 
0

如果你只是希望它看起來像陣列格式而不實際的數組,你可以這樣做:

var code = 743919183; 
var tempPost = '["'+code+'"]'; 
$scope.arrayTwo = []; 
$scope.arrayTwo.push(code); 

這就是你要去的地方嗎?

或者你可以做到這一點

var code = 743919183; 
$scope.arrayTwo = []; 

function Str2Arr() { 

    s = ''; 

    for (var i=0; i<code.length; i++) { 

    if (code[i] != ',') { s += code[i]; } 

        else { arrayTwo .push(s); s = ''; } 

    } 

    arrayTwo .push(s); 

    alert(arrayTwo .join('\n')); 

} 

Str2Arr(); 
0
var code = 743919183; 
var tempPost = '["'+code+'"]'; 
$scope.arrayTwo = []; 
$scope.arrayTwo.push(code); 

在Firefox $scope.arrayTwo回報[ 「743919183」]和鉻[ 「743919183」(無空間鉻)。所以我認爲這不應該在代碼中造成問題。

+0

這將是一個問題,當我試圖抓住數據使用'$ _PHP ['產品']'例如....'$ scope.arrayTwo'是假的格式....但是當我嘗試發佈'tempPost',它工作 – 2014-09-03 12:04:06