2011-05-03 37 views

回答

10

如何

var str = "Because"; 
var len = str.length; 
var x = str.substring(0, len-2) + "%" + str.substring(len-2); 

希望這有助於。

+0

這應該是len-2 – David 2011-05-03 12:45:13

+0

已經有一段時間了。只要發佈並注意到我犯了錯誤,我就會立即更改它。 – 2011-05-03 12:46:54

1
str.substring(0, str.length - 2) + "%" + str.substring(str.length - 2) 
1

嘗試使用這樣的:

str.substring(0,str.length-2)+"%"+str.substring(str.length-2) 
+0

是的,我知道Jim Blackler的評論包含這個相同的解決方案。當我寫作時,我沒有注意到他已經寫下了它。如果問題很簡單,這就是發生了什麼;)。另外,是的,我不喜歡使用空格:D。 – xfix 2011-05-03 13:02:44

6

試試這個

var str = "Because"; 
var result = str.slice(0, -2) +"%"+str.slice(-2); 
+1

真棒解決方案。比我的好得多:) – netbrain 2011-05-03 12:51:01

+0

@netbrain - 謝謝.. :) – niksvp 2011-05-03 12:56:18

1

嘗試

function insert(str, value, position){ 

    return str.substring(0,str.length-position) + value + str.substring(str.length-position); 
} 
0

這是我寫的爲你做它的功能!

var MyString = "Because"; 

// Inserts a string into another string at a given point 
function InsertString(OriginalString, InsertingString, Position) { 
    return OriginalString.substring(0, Position) + InsertingString + OriginalString.substring(Position, OriginalString.length); 
} 

// You can call this as well if you want it n positions from right 
function InsertStringFromRight(OriginalString, InsertingString, CharsFromRight) { 
    return InsertString(OriginalString, InsertingString, OriginalString.length - CharsFromRight); 
} 

// Call the function! 
var Test1 = InsertString(MyString , "#", 5); 
var Test2 = InsertStringFromRight(MyString , "#", 2); 

alert(Test1); 
alert(Test2); 
1

在這裏你走! :)

http://jsfiddle.net/6WNk8/

+0

爲什麼它包裝在jQuery的DOM準備好了? – alex 2011-05-03 12:49:26

+0

只是一個例子...... sheesh。 – netbrain 2011-05-03 12:52:00

+0

不應該使用我的解決方案。即時通訊經歷了太多不尋常的步驟! – netbrain 2011-05-03 13:11:08

1

或者......

var str = "Because", 
    chars = str.split(''); 

chars.splice(-2, 0, '%'); 
str = chars.join(''); 

jsFiddle

相關問題