Saya ingin mencoba melakukan panggilan string yang setara dengan C # String.IsNullOrEmpty(string)
di javascript. Saya mencari online dengan asumsi bahwa ada panggilan sederhana yang harus dilakukan, tetapi saya tidak dapat menemukannya.
Untuk saat ini saya menggunakan if(string === "" || string === null)
pernyataan untuk menutupinya, tetapi saya lebih suka menggunakan metode yang telah ditentukan (saya terus mendapatkan beberapa contoh yang lolos karena beberapa alasan)
Apa panggilan javascript terdekat (atau jquery jika memiliki satu) yang akan sama?
javascript
jquery
Piala Stanley Phil
sumber
sumber
Jawaban:
Anda terlalu banyak berpikir. String kosong dan kosong adalah nilai yang salah dalam JavaScript.
if(!theString) { alert("the string is null or empty"); }
Falsey:
sumber
Jika, karena alasan apa pun, Anda hanya ingin menguji
null
danempty
, Anda dapat melakukan:function isNullOrEmpty( s ) { return ( s == null || s === "" ); }
Catatan: Ini juga akan menangkap undefined sebagai @Raynos disebutkan di komentar.
sumber
return (s == null || s === "")
s == null
menangkap keduanyanull
&undefined
sejaknull == undefined
if (!string) { // is emtpy }
Apa cara terbaik untuk menguji string kosong dengan jquery-out-of-the-box?
sumber
Jika Anda tahu itu
string
bukan numerik, ini akan berfungsi:if (!string) { . . .
sumber
string
sebenarnya bukan string tetapi Angka nol, makastring
akan menjadi salah. Ini tidak akan menjadi masalah jika kita tahu itustring
adalah string atau null yang sebenarnya.Anda bisa melakukannya
if(!string) { //... }
Ini akan memeriksa
string
string tidak terdefinisi, null, dan kosong.sumber
Untuk lebih jelasnya, di
if(!theString){//...}
mana theString adalah variabel yang tidak dideklarasikan akan melemparkan kesalahan yang tidak ditentukan, tidak menemukannya benar. Di sisi lain jika Anda memiliki:if(!window.theString){//...}
atauvar theString; if(!theString){//...}
akan bekerja seperti yang diharapkan. Dalam kasus di mana variabel mungkin tidak dideklarasikan (sebagai lawan menjadi properti atau tidak ditetapkan), Anda perlu menggunakan:if(typeof theString === 'undefined'){//...}
Preferensi saya adalah membuat fungsi prototipe yang membungkusnya untuk Anda.
sumber
Karena jawaban yang ditandai sebagai benar mengandung kesalahan kecil, inilah usaha terbaik saya untuk menemukan solusi. Saya punya dua opsi, satu yang mengambil string, yang lain mengambil string atau angka, karena saya berasumsi banyak orang mencampur string dan angka dalam javascript.
Langkah-langkah: -Jika objek null itu adalah null atau string kosong. -Jika tipenya bukan string (atau angka), nilai stringnya adalah null atau kosong. CATATAN: kami mungkin juga membuat pengecualian di sini, tergantung pada preferensi. -Jika nilai string yang dipotong memiliki panjang yang lebih kecil dari 1 nilainya null atau kosong.
var stringIsNullOrEmpty = function(theString) { return theString == null || typeof theString != "string" || theString.trim().length < 1; } var stringableIsNullOrEmpty = function(theString) { if(theString == null) return true; var type = typeof theString; if(type != "string" && type != "number") return true; return theString.toString().trim().length < 1; }
sumber
Anda bisa mengatakannya dengan logika
Katakanlah Anda memiliki nama variabel strVal, untuk memeriksa apakah nol atau kosong
if (typeof (strVal) == 'string' && strVal.length > 0) { // is has a value and it is not null :) } else { //it is null or empty :( }
sumber
Anda dapat membuat satu metode Utilitas yang dapat digunakan kembali di banyak tempat seperti:
function isNullOrEmpty(str){ var returnValue = false; if ( !str || str == null || str === 'null' || str === '' || str === '{}' || str === 'undefined' || str.length === 0 ) { returnValue = true; } return returnValue; }
sumber