2012-02-22 6 views
1

jQuery를 사용하여 문자열의 왼쪽 공백을 계산해야합니다. 예를 들어문자열 왼쪽에 공백이 있습니다. jQuery

:

String: " Hello how are you? " will have 4 white spaces at its left! 

어떻게 jQuery를 함께 것을 얻을 수 있나요?

감사합니다.

답변

5

이것은 일반적인 오래된 자바 스크립트로 처리 할 수있는 기능입니다. 보통 오래된 자바 스크립트에서

function countLeftBlanks(arg) { 
    var i = 0; 
    while (i < arg.length && arg[i] === ' ') { 
    i++; 
    } 
    return i; 
} 
8

사용하여 정규 표현식 : 참여

var spacesOnLeft = myStr.match(/^ */)[0].length 

없음 루프. :)

+0

나는 그것이 작동하기 때문에 나는 대답을 upvoted했다. 그러나 나는 다른 대답을 사용했다. 그래서 나는 대답을 다른 대답으로 사용했다. 당신의 대답이 다른 누군가를 돕기를 바랍니다! – euther

0

우리는 정규식을 사용하는 경우, 아래의 더 나은 상호 환경의 솔루션이 될 수 있습니다 :

var spacesOnLeft = (myStr.match(/^ */) || [[]])[0].length; 

이 (가) 위 match의 결과가 null 때 특정 환경에서 발생되는 것을 형식 오류를 중지합니다.

N = 0이면 null을 반환하는 경우 : 공식 ECMAScript Language Specification에서 match 방법은 상태.

그럼에도 불구하고 대부분의 최신 브라우저는 빈 문자열이 포함 된 배열을 반환합니다. 그러나 일부 환경에서는 ECMAScript 정의가 적용되고 matched[0]에 액세스하려고 시도하면 TypeError가 throw됩니다. NodeJS 환경이 좋은 예입니다.

관련 문제