2015-11-04 71 views
2

JavaScript字符串拼接末

var code =''; 
 
alert(branch+"t"); // resutl: 123t 
 
for(var i=0;i<endVar;i++){ 
 
    code = code+branch; 
 
} 
 
alert(code);// result: 123 123 123 etc..
增加了額外的空間,我有分支的字符串var和代碼變種。如果我確實警告分支+「t」,我得到123t,所以我想我的分支var中最後沒有空格。 但做了循環和警告代碼var我得到123 123 123,所以我得到的空間添加後,分支到代碼var的每個連接。可能是什麼問題?

+1

_branch_變量的值是多少? –

回答

3

您的主要問題可能是左側的空間,而不是右側。 因此,請嘗試修剪您的數據。

var code =''; 
alert(branch+"t"); // resutl: 123t 
for(var i=0;i<endVar;i++){ 
    //the .trim() here will handle the spaces 
    code = code+branch.trim(); 
} 
alert(code); 

爲什麼?

那麼,修剪在後端開發中是一個衆所周知的做法,因爲你永遠無法準確預測你的變量會發生什麼。所以,修整將remove all spaces from both sides of your string。我認爲這是你的出路,驗證你的數據總是安全的。

1

好像分支有一個額外的空間

branch = ' 123'. 

只要確保你刪除它,它也不會每次都追加多餘的空格。

0

我相信你沒有複製你的整個代碼。 「分公司」 變種不能123,如果是的話,你不會看到一個空間:

https://jsfiddle.net/59hqc2ck/

var code =''; 
var branch = 123; 
var endVar = 10; 
alert(branch+"t"); // resutl: 123t 
for(var i=0;i<endVar;i++){ 
    code = code+branch; 
} 

警報(代碼);