簡體   English   中英

將字符串與數組值匹配

[英]Matching a string against values of array

我正在嘗試制作一種登錄系統,而我要從用戶輸入中獲取一個字符串,我想檢查該輸入是否在特定數組中……

我到目前為止所得到的:

var name = $(".input").value();
var options = ["option_one", "option_two", "three"];
$(".submit").click(function() {

for(i=0; i < options.lenght; i++){
    if(options[i] == name){
        alert("true")
    }else{
        alert("false")
        }
}


});

誰能幫我嗎?

編輯: CodePen

您可以這樣使用indexOf

if(options.indexOf(name) != -1){
    alert("valid")
}else{
    alert("false");
}

indexOf將從找到元素的數組中返回索引(> = 0),否則返回-1。

使用javscript Array.prototype.some()函數:

var name = $(".input").value();
var options = ["option_one", "option_two", "three"];
if(options.some(el){
  return el == name;
}){
  alert("valid")
}else{
  alert("false");
}

參考: https : //developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/some

Simplier方法-使用.includes()函數。

http://codepen.io/anon/pen/JEVBgN

 var name = $(".input").val(); var options = ["option_one", "option_two", "three"]; console.log(options.includes(name) ? 'valid!' : 'invalid!'); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <input class='input' value='three'> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM