변수가 null인지 빈 문자열인지 또는 JavaScript에서 모두 공백인지 확인하는 방법은 무엇입니까?
변수가 null인지 또는 모든 빈 공간이 있는지 또는 공백 ( "")인지 확인해야합니다.
다음이 있지만 작동하지 않습니다.
var addr;
addr = " ";
if (!addr) {
// pull error
}
다음을 수행하면 작동합니다.
if (addr) {
}
내가 필요한 것은 C # 메서드와 같은 것 String.IsNullOrWhiteSpace(value)입니다.
를 더 가깝게 모방 IsNullOrWhiteSpace하지만 null, 비어 있거나 모든 공간 만 감지 하는 비 jQuery 솔루션 :
function isEmptyOrSpaces(str){
return str === null || str.match(/^ *$/) !== null;
}
...그때:
var addr = ' ';
if(isEmptyOrSpaces(addr)){
// error
}
* 편집 * op는 구체적으로 "var가 null인지 또는 빈 공간이 있는지 또는 공백이 있는지 확인해야합니다"라고 명시 합니다. 따라서 "공백"은 null, 공백 또는 공백 이상을 포함하지만 내 대답은 op의 특정 질문에 대답하기위한 것입니다. 예를 들어 op가 탭과 같은 것을 잡기를 원하지 않을 수 있기 때문에 이것은 중요합니다.
당신이 사용할 수있는 if(addr && (addr = $.trim(addr)))
이것은 addr검사를 수행 할 때 그냥 무시하는 대신 실제로 외부 공백을 제거하는 장점이 있습니다 .
참조 : http://api.jquery.com/jQuery.trim/
if (addr == null || addr.trim() === ''){
//...
}
null비교도 잡을 것입니다 undefined. false통과 하고 싶다면 을 사용하십시오 !addr. 이전 버전의 브라우저 호환성을 addr.trim()위해 $.trim(addr).
다음과 같은 고유 한 방법을 만들 수 있습니다.
String.IsNullOrWhiteSpace(value)
function IsNullOrWhiteSpace( value) {
if (value== null) return true;
return value.replace(/\s/g, '').length == 0;
}
isEmptyOrSpaces(str){
return !str || str.trim() === '';
}
공백을 확인할 때 c # 메서드는 유니 코드 표준을 사용합니다. 공백에는 공백, 탭, 캐리지 리턴 및 기타 인쇄되지 않는 많은 문자 코드가 포함됩니다. 따라서 다음을 사용하는 것이 좋습니다.
function isNullOrWhiteSpace(str){
return str == null || str.replace(/\s/g, '').length < 1;
}
위의 단순화 된 버전 : (여기에서 : https://stackoverflow.com/a/32800728/47226 )
function isNullOrWhitespace( input ) {
return !input || !input.trim();
}
이것을 시도하십시오
/**
* Checks the string if undefined, null, not typeof string, empty or space(s)
* @param {any} str string to be evaluated
* @returns {boolean} the evaluated result
*/
function isStringNullOrWhiteSpace(str) {
return str === undefined || str === null
|| typeof str !== 'string'
|| str.match(/^ *$/) !== null;
}
이렇게 사용할 수 있습니다
isStringNullOrWhiteSpace('Your String');
isEmptyOrSpaces(str){
return str === null || str.trim().length>0;
}
function isEmptyOrSpaces(str){
return str === null || str.match(/^[\s\n\r]*$/) !== null;
}
'Program Club' 카테고리의 다른 글
| Javascript의 sort ()는 어떻게 작동합니까? (0) | 2020.10.19 |
|---|---|
| 전체 파일 대신 한 줄을 git-checkout 할 수 있습니까? (0) | 2020.10.18 |
| Linq의 Union Vs Concat (0) | 2020.10.18 |
| 사용자 지정 유효성 검사 angularjs 지시문을 테스트하려면 (0) | 2020.10.18 |
| R에서 vlookup을 수행하고 Excel에서와 같이 채우는 방법은 무엇입니까? (0) | 2020.10.18 |