2016-01-06 88 views
0

而不是單獨通過參數如何循環訪問數組並檢查每個單詞是否是迴文?如果是我想回到這個詞,如果不是我想返回一個0檢查palindromes陣列

var myArray = ['viicc', 'cecarar', 'honda'];  

function palindromize(words) { 
    var p = words.split("").reverse().join(""); 

    if(p === words){ 
     return(words); 
    } else { 
     return("0"); 
    } 
} 
palindromize("viicc"); 
palindromize("cecarar"); 
palindromize("honda"); 
+0

看一個for循環http://www.w3schools.com/js/js_loop_for.asp。 –

+0

嘗試'myArray.map' –

+3

不是試圖回答你的問題,而只是一個側面說明。你的函數並不試圖讓一個給定的單詞成爲一個迴文,所以即使你沒有返回一個布爾值,也許稱它爲'isPalindrome'比'palindromize'更好。 – Stack0verflow

回答

0

你要使用for loop

for (var i = 0; i < myArray.length; i++) { 
    palindromize(myArray[i]); 
} 

我建議你變得非常熟悉他們,因爲他們是(可以說)最常見的一種循環結構。

0

只需使用Array.prototype.map()

map()方法創建調用此陣列中的每個元件上的提供功能的結果的新的數組。

myArray.map(palindromize) 

var myArray = ['viicc', 'cecarar', 'honda', 'ada']; 
 

 
function palindromize(word) { 
 
    var p = word.split("").reverse().join(""); 
 
    return p === word ? word : 0; 
 
} 
 

 
document.write('<pre>' + JSON.stringify(myArray.map(palindromize), 0, 4) + '</pre>');

0
var myArray = ['viicc', 'cecarar', 'honda', 'malayalam' ]; 
var b = myArray.filter(function(c,d,f){ 
var Cur = c.split('').reverse().join(''); 
if(c == Cur){ 
console.log(myArray[d] +" " + " is Palindrome"); 
} 
});