2010-12-01 2 views
0

숫자가 쉼표로 구분 된 목록에 있는지 확인하는 가장 쉬운 방법은 무엇입니까?목록의 자바 스크립트

var numbers = list.split(","); 

이 당신에게 목록에있는 숫자의 배열을 줄 것이다 : 그것은 공상 아무것도 쉼표로 구분 된 숫자에 불과 목록이 있다면

console.log(provider[cardType]); 
    //returns: Object { name="visa", validLength="16,13", prefixRegExp=} 

if (ccLength == 0 || (cardType > 0 && ccLength < provider[cardType].validLength)) { 
    triggerNotification('x', 'Your credit card number isn\'t long enough'); 
    return false; 
} else { 
    if ($('.credit-card input[name="cc_cvv"]').val().length < 3) { 
     triggerNotification('x', 'You must provide a CCV'); 
     return false; 
} 

답변

1

this와 (과) 비슷한 질문입니다.

CSV 파일을 .split()하여 inArray를 사용하십시오.

0

, 당신은 단지 split 방법을 사용할 수 있습니다. 숫자가 배열에 있는지 검사하는 것은 간단합니다.

1

방법을 잘 모르 샘플 코드는 또한

이이 쉬운 방법이 아닌 경우 반드시 ... 숫자는 쉼표로 구분 된 목록에 있는지 확인에 관한 것으로,하지만이 떠오르는 내용은 다음과 같습니다

<script type="text/javascript"> 
var myNumbers = "1,2,3,4,5"; 
var myArray = myNumbers.split(','); 

// looking for "4" 
for (var i=0; i<myArray.length; i++) { 
    if (myArray[i] == 4) { 
     alert('Found it!'); 
     break; 
    } 
} 

+0

제 대답과 질문에'validLength = "16,13"'과'ccLength Phrogz

0

기본 자바 스크립트 때문에 크로스 브라우저 호환. 일부 프레임 워크는이 작업을 수행하는 기능을 제공하지만 다음과 같은 기본 기능을 제공하지는 않습니다.

var numbers = list.split(","); 
var count = numbers.length; 
var exists = false; 

for (var i = 0; i < count; ++i) { 
    if (numbers[i] == anumber) { 
    exists = true; 
    break; 
    } 
} 
1

게시 한 스크립트에 중요한 쉼표로 구분 된 목록이있는 곳이 표시되지 않습니다. 가장 빠른 방법은

var csvList ="a,b,c,d,e,f,g,h"; 
var testList = ","+csvList+","; 
var needle = "f"; 
alert(testList.indexOf(","+needle+",")!=-1) 

단지 다른 것 같은 수, 샘플에서

+0

이것은 테스트 케이스에서는 작동하지만 더 큰 세트에서는 신뢰할 수 없습니다. –

+0

어떤 점에서? "바늘"에 쉼표가없는 한이 값의 합리적으로 큰 집합에 대해 작동합니다. 이것을 시험하는 배려? – mplungjan

+0

죄송합니다. 비슷한 대답을했던 가벼운 논리와 비슷한 또 다른 대답이있었습니다. 네가 옳아. 세트와 바늘을 쉼표로 접함으로써 확실하게 일치시켜야합니다. +1 다른 접근 방식. –

0

), 나는 어떻게이 숫자 지정된 두 값의 범위 내에 있는지 않습니다 "질문이었다 가정 단일 쉼표로 구분 된 문자열 ":

function inRange(number, stringRange){ 
    var minmax = stringRange.split(','); 
    minmax[0] = minmax[0]*1; //convert to number 
    minmax[1] = minmax[1]*1; //convert to number 
    minmax.sort(); // Ensure [0] is the min 
    return number>=minmax[0] && number<=minmax[1]; 
} 
0

...이 하나를 시도

console.log(provider[cardType]); //returns: Object { name="visa", validLength="16,13", prefixRegExp=} 
var regExp = new RegExp(",?" + ccLength + ",?"); 
if (ccLength == 0 || (cardType > 0 && !regExp.test(provider[cardType].validLength))) 
{ 
    triggerNotification('x', 'Your credit card number isn\'t long enough'); 
    return false; 
} 
else 
{ 
    if ($('.credit-card input[name="cc_cvv"]').val().length < 3) 
    { 
      triggerNotification('x', 'You must provide a CCV'); 
      return false; 
    } 
}