2014-01-17 44 views
0

E.g.葡萄應該輸出gae。 如果代碼的開頭是這樣的,如何從隨機字符串輸出單詞的第一個,中間和最後一個字母

var words = [ "banana", "apple", "pineapple", "orange", "pear", "grape", 
    "watermelon",  "paragraph", "Avocado", "cherry", "blackberry", "coconut", 
    "lime", "lemon", "olive", "plum", "Nectarine", "mango", "apricot"]; 
for (var i = 0; i < 5; i++){ 
    var n1 = Math.floor(rc4Rand.getRandomNumber() * words.length); 
    var word = words[n1]; 
    document.writeln("The word is: " + word); 
    document.writeln("1st, middle and last letters are:"); 
    output(word); 
} 

我應該寫某事像陣列n1[0],陣列[n1.length-1]array[length/2]或得到什麼結果呢? Tks所有您的意見和建議!

+0

什麼是一個字的偶數字符的中間字符? –

回答

4

像這樣的事情

var shortened = word.charAt(0) + // first 
       word.charAt(Math.floor(word.length/2)) + // middle 
       word.charAt(word.length-1); // last 

FIDDLE

0
var string = "random string"; 

var fml; // first middle last 
fml = string[0] + string[Math.floor(string.length/2)] + string[string.length - 1]; 
// gives "r g" 

您可能要添加上string一些檢查。如果它是空字符串,則會失敗。它比2個字符短,你會得到重複。如果您想以其他方式四捨五入(對於長度均勻的字符串),您也可以用Math.ceil代替Math.floor

相關問題