2013-03-08 42 views
0

我正試圖在html文件中寫入以下javascript。IndexOf整個數組和警報名稱

創建一個包含10個運動隊名稱的數組。

然後使用「for循環」遍歷數組。如果球隊名稱包含字母「an」,則提醒球隊名稱。我想使用「indexOf」函數來確定「an」是否包含在團隊名稱中。

這是多遠我得到:

// index:         
    var NHL = new Array("New Jersey Devils", "New York Islanders", 
         "New York Rangers", "Philadelphia Flyers", 
         "Pittsburgh Penguins", "Boston Bruins", 
         "Buffalo Sabres", "Montreal Canadiens" , 
         "Ottawa Senators", "Toronto Maple Leafs"); 

    for(i=0 , i<NHL.indexOf("an") , i++){ 
     if(NHL.indexOf == "an"){ 
      alert(indexOf) 
     } 
    } 

回答

1

indexOf(str)將返回非負指數。如果子字符串不存在,它將返回-1,否則它將返回該str的第一個出現。

var NHL = new Array("New Jersey Devils", "New York Islanders", 
      "New York Rangers", "Philadelphia Flyers", "Pittsburgh Penguins", 
      "Boston Bruins", "Buffalo Sabres", "Montreal Canadiens" , 
      "Ottawa Senators", "Toronto Maple Leafs"); 

for(i=0; i<NHL.length; i++) 
{ 
    if(NHL[i].indexOf("an") !== -1) 
     alert(NHL[i]); 
} 
+0

太感謝你了!您的代碼完美無缺。我現在看到我出錯的地方。 – tidydee 2013-03-08 21:31:48

+0

不客氣:)高興地幫忙.. – asifsid88 2013-03-09 00:22:08

0
var NHL = new Array("New Jersey Devils", "New York Islanders", 
"New York Rangers", "Philadelphia Flyers", "Pittsburgh Penguins", 
"Boston Bruins", "Buffalo Sabres", "Montreal Canadiens" , 
"Ottawa Senators", "Toronto Maple Leafs"); 

/** 
* Iterate through each array element, 
* Check against 'an', indexOf returns -1 
* if no match found. 
**/ 
for(var i=0 ; i < NHL.length; i++) { 
    if (NHL[i].indexOf("an") !== -1) 
      alert("This " + NHL[i] + " Contains 'an' at array index: " + i); 
} 

的jsfiddlehttp://jsfiddle.net/HqXSs/1/

+0

非常感謝。你的代碼也很棒。方法不同,但結果相同。 – tidydee 2013-03-08 21:33:02

0

在這裏你去:

var NHL = new Array("New Jersey Devils", "New York Islanders", "New York Rangers", "Philadelphia Flyers", "Pittsburgh Penguins", "Boston Bruins", "Buffalo Sabres", "Montreal Canadiens" , "Ottawa Senators", "Toronto Maple Leafs"); 

for (var i=0; i<NHL.length; i++){ 
    if(NHL[i].indexOf("an") !== -1){ 
     alert(NHL[i]); 
    } 
} 
1
var NHL = new Array("New Jersey Devils", "New York Islanders", "New York Rangers", "Philadelphia Flyers", "Pittsburgh Penguins", "Boston Bruins", "Buffalo Sabres", "Montreal Canadiens" , "Ottawa Senators", "Toronto Maple Leafs"); 

for(var i=0, len=NHL.length; i<len; i++){ 
    var name=NHL[i]; 
    if(name.indexOf("an")>-1){ 
     alert(name); 
    } 
}