Как проверить пустую / неопределенную / пустую строку в JavaScript? - PullRequest
2454 голосов
/ 30 сентября 2008

Я видел этот поток , но я не видел конкретного примера JavaScript. Есть ли простой string.Empty доступный в JavaScript, или это просто проверка ""?

Ответы [ 41 ]

4 голосов
/ 06 августа 2010
function tell()
{
var pass = document.getElementById('pasword').value;
var plen = pass.length;

now you can check if your string is empty as like 
if(plen==0)
{
         alert('empty');
}
else
{
   alert('you entered something');
}
}


<input type='text' id='pasword' />

это также общий способ проверить, является ли поле пустым.

4 голосов
/ 30 ноября 2017

Вы можете проверить следующие способы и понять разницу.

var j = undefined;
console.log((typeof j == 'undefined') ? "true":"false");
var j = null; 
console.log((j == null) ? "true":"false");
var j = "";
console.log((!j) ? "true":"false");
var j = "Hi";
console.log((!j) ? "true":"false");
3 голосов
/ 06 мая 2014

Вы также должны всегда проверять тип, так как JavaScript является языком с утиной типизацией, поэтому вы можете не знать, когда и как изменились данные в середине процесса. Итак, вот лучшее решение:

var str = "";
if (str === "") {
    //...
}
3 голосов
/ 03 июля 2013

Я предпочитаю использовать непустой тест вместо пустого

function isNotBlank(str) {
   return (str && /^\s*$/.test(str));
}
2 голосов
/ 10 февраля 2013

Альтернативный способ, но я считаю, что ответ bdukes - лучший.

   var myString = 'hello'; 
    if(myString.charAt(0)){
    alert('no empty');
    }
    alert('empty');
2 голосов
/ 19 декабря 2012

Также неплохо проверить, что вы не пытаетесь передать неопределенный термин.

function TestMe() {
  if((typeof str != 'undefined') && str) {
    alert(str);
  }
 };

TestMe();

var str = 'hello';

TestMe();

Я обычно сталкиваюсь со случаем, когда я хочу что-то сделать, когда строковый атрибут для экземпляра объекта не пустой. Что хорошо, за исключением того, что атрибут не всегда присутствует.

1 голос
/ 11 мая 2019

Попробуйте это:

export const isEmpty = string => (!string || string.length === 0);
0 голосов
/ 11 апреля 2019

На данный момент нет прямого метода, такого как string.empty, чтобы проверить, является ли строка пустой или нет. Но в вашем коде вы можете использовать проверку оболочки для пустой строки, например:

// considering the variable in which your string is saved is named str.
if(str !== null || str!== undefined){
  if (str.length>0) { 

  // Your code here which you want to run if the string is not empty.

  }
}

Используя это, вы также можете убедиться, что строка также не является неопределенной или нулевой. Помните, неопределенные, нулевые и пустые три разные вещи.

0 голосов
/ 19 июля 2014

Чтобы проверить, пусто ли это:

var str = "Hello World!";
var n = str.length;
if(n === ''){alert("THE STRING str is EMPTY");}

Чтобы проверить, не пусто ли оно

var str = "Hello World!";
var n = str.length;
if(n != ''){alert("THE STRING str isn't EMPTY");}
0 голосов
/ 08 апреля 2014
var x ="  ";
var patt = /^\s*$/g;
isBlank = patt.test(x);
alert(isBlank);// is it blank or not??
x=x.replace(/\s*/g,"");// another way of replacing blanks with ""
if (x===""){alert("ya it is blank")}
...