दिलचस्प पोस्ट
किसी POST NSURLRequest पर डेटा संलग्न करें जब कोई टैब क्रोम में निष्क्रिय होता है तो मैं सेट इन्टरवॉल भी कैसे काम कर सकता हूं? स्विंग में उपयोग किए गए फ़्रेम आइकनों के आकार SSK-PK- प्रमाणीकरण में बाद में उपयोग के लिए PKCS12 फ़ाइल से सार्वजनिक / निजी कुंजी को निकालें जावा कैलेंडर में जनवरी माह 0 क्यों है? टोमकैट में CORS हेडर सेट करें एक्शनबार पर कोई ऐप आइकन नहीं थ्रेड कैसे सटीक है। नींद (टाइमस्पेन)? सी में अभिप्राय कार्य घोषणाएं सीकेके का उपयोग करते हुए जीसीसी और क्लैंग / एलएलवीवी के बीच स्विचिंग केस असंवेदनशील स्ट्रिंग LINQ-to-SQL में तुलना करते हैं सीएसआरएफ (क्रॉस साइट अनुरोध जालसाजी) हमले का उदाहरण और PHP में रोकथाम HTMLService और ऐप स्क्रिप्ट के साथ फार्म और फ़ाइल अपलोड काम नहीं कर रहा है जावा में "11 वीं", "21 वीं" या "23 वां" कहने के लिए महीने के दिन आप कैसे प्रारूपित करते हैं? (क्रमिक सूचक) एंड्रॉइड: एसडी कार्ड से छवि प्रदर्शित करें

क्या शून्य, अपरिभाषित, या जावास्क्रिप्ट में खाली चर के लिए जाँच करने के लिए एक मानक कार्य है?

क्या कोई सार्वभौमिक जावास्क्रिप्ट फ़ंक्शन है जो यह जांचता है कि एक चर एक मान है और यह सुनिश्चित करता है कि यह undefined या null ? मुझे यह कोड मिल गया है, लेकिन मुझे यकीन नहीं है कि इसमें सभी मामलों को शामिल किया गया है:

 function isEmpty(val){ return (val === undefined || val == null || val.length <= 0) ? true : false; } 

वेब के समाधान से एकत्रित समाधान "क्या शून्य, अपरिभाषित, या जावास्क्रिप्ट में खाली चर के लिए जाँच करने के लिए एक मानक कार्य है?"

आप केवल जांच कर सकते हैं कि क्या चर एक truthy मान है या नहीं। इसका मत

 if( value ) { } 

यदि value नहीं true तो यह true होगा:

  • शून्य
  • अपरिभाषित
  • NaN
  • खाली स्ट्रिंग ("")
  • 0
  • असत्य

उपरोक्त सूची ECMA- / Javascript में सभी संभव त्यौहार मूल्यों को दर्शाती है। ToBoolean अनुभाग में विनिर्देशन में इसे खोजें

इसके अलावा, अगर आपको पता नहीं है कि कोई चर मौजूद है (इसका मतलब है, अगर इसे घोषित किया गया है) आपको ऑपरेटर के typeof जांचना चाहिए उदाहरण के लिए

 if( typeof foo !== 'undefined' ) { // foo could get resolved and it's defined } 

यदि आपको यह सुनिश्चित किया जा सकता है कि कम से कम एक वेरिएबल घोषित किया गया है, तो आपको सीधे जांच करनी चाहिए कि उसके पास एक truthy मान है जैसे ऊपर दिखाया गया है।

आगे पढ़ें: http://typeofnan.blogspot.com/2011/01/typeof-is-fast.html

 // value is undefined or null return value === undefined || value === null; 

जावास्क्रिप्ट निंजा == ऑपरेटर का इस्तेमाल कर सकता है:

 return value == null; 
 function isEmpty(value){ return (value == null || value.length === 0); } 

यह इसके लिए सही होगा

 undefined // Because undefined == null null [] "" 

और फ़ंक्शन की length बाद शून्य तर्क फ़ंक्शन, इसे घोषित घोषित पैरामीटर की संख्या होती है

उत्तरार्द्ध श्रेणी को अस्वीकार करने के लिए, आप केवल खाली स्ट्रिंग्स की जांच करना चाह सकते हैं

 function isEmpty(value){ return (value == null || value === ''); } 

सबसे अच्छा रेटिंग के साथ पहला जवाब गलत है। यदि मान अपरिभाषित है तो यह आधुनिक ब्राउज़र में एक अपवाद फेंक देगा। आपको इसका उपयोग करना होगा:

 if (typeof(value) !== "undefined" && value) 

या

 if (typeof value !== "undefined" && value) 

मुझे पता है यह एक पुराना सवाल है, लेकिन यह सबसे सुरक्षित जांच है और मैंने इसे यहां बिल्कुल भी नहीं देखा है:

 if (typeof value != 'undefined' && value) { //deal with value' }; 

यह ऐसे मामलों को कवर करेगा जहां मूल्य कभी परिभाषित नहीं किया गया था, और इनमें से कोई भी:

  • शून्य
  • अपरिभाषित (अनिर्धारित मूल्य एक पैरामीटर के समान नहीं है जिसे कभी परिभाषित नहीं किया गया था)
  • 0
  • "" (खाली स्ट्रिंग)
  • असत्य
  • NaN

प्रकार के मूल्य में सख्त समानता की आवश्यकता नहीं है ! = 'अपरिभाषित'

आप निम्न कार्य उपयोगी पा सकते हैं:

 function typeOf(obj) { return {}.toString.call(obj).split(' ')[1].slice(0, -1).toLowerCase(); } 

या ES7 में (टिप्पणी अगर आगे सुधार)

 function typeOf(obj) { const { toString } = Object.prototype; const stringified = obj::toString(); const type = stringified.split(' ')[1].slice(0, -1); return type.toLowerCase(); } 

परिणाम:

 typeOf(); //undefined typeOf(null); //null typeOf(NaN); //number typeOf(5); //number typeOf({}); //object typeOf([]); //array typeOf(''); //string typeOf(function () {}); //function typeOf(/a/) //regexp typeOf(new Date()) //date 

! रिक्त स्ट्रिंग (""), रिक्त, अपरिभाषित, झूठी और संख्या 0 और NaN की जांच करें कहो, यदि कोई स्ट्रिंग रिक्त है var name = "" तो console.log(!name) रिटर्न true

 function isEmpty(val){ return !val; } 

यह फ़ंक्शन सत्य वापस करेगा अगर val खाली है, रिक्त, अपरिभाषित, गलत, संख्या 0 या NaN

आप इसे थोड़ा अधिक कर रहे हैं यह जांचने के लिए कि कोई चर एक मूल्य नहीं दिया गया है, तो आपको केवल अपरिभाषित और शून्य के खिलाफ जांच की आवश्यकता होगी।

 function isEmpty(value){ return (typeof value === "undefined" || value === null); } 

यह 0 , "" , और ऑब्जेक्ट (यहां तक ​​कि खाली ऑब्जेक्ट और एरे) को मानते हैं "मान्य" मान हैं

यहां मेरा है – अगर रिटर्न सही है तो मान रिक्त, अपरिभाषित, आदि या रिक्त है (यानी केवल रिक्त स्थान हैं):

 function stringIsEmpty(value) { return value ? value.trim().length == 0 : true; } 

यदि आप सादा जावास्क्रिप्ट पसंद करते हैं तो यह कोशिश करें:

  /** * Checks if `value` is empty. Arrays, strings, or `arguments` objects with a * length of `0` and objects with no own enumerable properties are considered * "empty". * * @static * @memberOf _ * @category Objects * @param {Array|Object|string} value The value to inspect. * @returns {boolean} Returns `true` if the `value` is empty, else `false`. * @example * * _.isEmpty([1, 2, 3]); * // => false * * _.isEmpty([]); * // => true * * _.isEmpty({}); * // => true * * _.isEmpty(''); * // => true */ function isEmpty(value) { if (!value) { return true; } if (isArray(value) || isString(value)) { return !value.length; } for (var key in value) { if (hasOwnProperty.call(value, key)) { return false; } } return true; } 

अन्यथा, यदि आप पहले से ही अंडरस्कोर या रद्दी का प्रयोग कर रहे हैं, तो कोशिश करें:

 _.isEmpty(value) 

यदि वेरिएबल घोषित नहीं किया गया है, तो आप किसी फ़ंक्शन का उपयोग करके अनिर्धारित के लिए परीक्षण करने में सक्षम नहीं होंगे क्योंकि आपको एक त्रुटि मिल जाएगी।

 if (foo) {} function (bar) {}(foo) 

दोनों एक त्रुटि उत्पन्न करेंगे यदि foo को घोषित नहीं किया गया है।

यदि आप परीक्षण करना चाहते हैं कि यदि कोई चर घोषित किया गया है तो आप उपयोग कर सकते हैं

 typeof foo != "undefined" 

यदि आप यह जांचना चाहते हैं कि क्या foo घोषित किया गया है और इसका मान है तो आप उपयोग कर सकते हैं

 if (typeof foo != "undefined" && foo) { //code here } 

आप उपयोग कर सकते हैं:

यदि स्ट्रिंग या मान खाली नहीं है, तो मान्य होने के लिए खंड। इस तरह:

 if (someVar.value) { //its not emppty } else { //Its empty } 

यह एक बहुत सरल है

 if(data) { //Comes inside only if the data is not empty and not null } 

डिफ़ॉल्ट मूल्य की जांच करने के लिए

 function typeOfVar (obj) { return {}.toString.call(obj).split(' ')[1].slice(0, -1).toLowerCase(); } function isVariableHaveDefaltVal(variable) { if ( typeof(variable) === 'string' ) { // number, boolean, string, object console.log(' Any data Between single/double Quotes is treated as String '); return (variable.trim().length === 0) ? true : false; }else if ( typeof(variable) === 'boolean' ) { console.log('boolean value with default value \'false\''); return (variable === false) ? true : false; }else if ( typeof(variable) === 'undefined' ) { console.log('EX: var a; variable is created, but has the default value of undefined.'); return true; }else if ( typeof(variable) === 'number' ) { console.log('number : '+variable); return (variable === 0 ) ? true : false; }else if ( typeof(variable) === 'object' ) { // -----Object----- if (typeOfVar(variable) === 'array' && variable.length === 0) { console.log('\t Object Array with length = ' + [].length); // Object.keys(variable) return true; }else if (typeOfVar(variable) === 'string' && variable.length === 0 ) { console.log('\t Object String with length = ' + variable.length); return true; }else if (typeOfVar(variable) === 'boolean' ) { console.log('\t Object Boolean = ' + variable); return (variable === false) ? true : false; }else if (typeOfVar(variable) === 'number' ) { console.log('\t Object Number = ' + variable); return (variable === 0 ) ? true : false; }else if (typeOfVar(variable) === 'regexp' && variable.source.trim().length === 0 ) { console.log('\t Object Regular Expression : '); return true; }else if (variable === null) { console.log('\t Object null value'); return true; } } return false; } var str = "A Basket For Every Occasion"; str = str.replace(/\s/g, "-"); //The "g" flag in the regex will cause all spaces to get replaced. 

परिणाम की जांच करें:

 isVariableHaveDefaltVal(' '); // string isVariableHaveDefaltVal(false); // boolean var a; isVariableHaveDefaltVal(a); isVariableHaveDefaltVal(0); // number isVariableHaveDefaltVal(parseInt('')); // NAN isNAN(' '); - true isVariableHaveDefaltVal(null); isVariableHaveDefaltVal([]); isVariableHaveDefaltVal(/ /); isVariableHaveDefaltVal(new Object('')); isVariableHaveDefaltVal(new Object(false)); isVariableHaveDefaltVal(new Object(0)); typeOfVar( function() {} ); 

मैंने किस प्रकार के ऑब्जेक्ट को चेक करने के लिए @ विक्स फ़ंक्शन () का उपयोग किया

instansof का उपयोग कर «

 var prototypes_or_Literals = function (obj) { switch (typeof(obj)) { // object prototypes case 'object': if (obj instanceof Array) return '[object Array]'; else if (obj instanceof Date) return '[object Date]'; else if (obj instanceof RegExp) return '[object regexp]'; else if (obj instanceof String) return '[object String]'; else if (obj instanceof Number) return '[object Number]'; else return 'object'; // object literals default: return typeof(obj); } }; output test « prototypes_or_Literals( '' ) // "string" prototypes_or_Literals( new String('') ) // "[object String]" Object.prototype.toString.call("foo bar") //"[object String]" 

यह जांच लेगा कि अनिश्चित घोंसले का आवेश अनिर्धारित है या नहीं

 function Undef(str) { var ary = str.split('.'); var w = window; for (i in ary) { try { if (typeof(w = w[ary[i]]) === "undefined") return true; } catch(e) { return true; } } return false; } if (!Undef("google.translate.TranslateElement")) { 

उपरोक्त चेक अगर Google अनुवाद फ़ंक्शन अनुवाद एलेमेंट मौजूद है यह समतुल्य है:

 if (!(typeof google === "undefined" || typeof google.translate === "undefined" || typeof google.translate.TranslateElement === "undefined")) { 

यह स्थिति जांचें

 if (!!foo) { //foo is defined } 

आपको जो चाहिए वह यह है।

 var myNewValue = myObject && myObject.child && myObject.child.myValue; 

यह एक त्रुटि कभी नहीं फेंकता होगा यदि myObject , child , या myValue शून्य है तो myNewValue रिक्त हो जाएगा कोई त्रुटि नहीं फेंक दी जाएगी

मैं का उपयोग कर लगता है? ऑपरेटर थोड़ा क्लीनर है

 var ? function_if_exists() : function_if_doesnt_exist(); 

यद्यपि एक बूढ़े, क्या भूल जाते हैं कि उन्हें अपना कोड ब्लॉक करना चाहिए और फिर त्रुटि को पकड़नी चाहिए और फिर परीक्षण करें …

 function checkup( t ){ try{ for(p in t){ if( p.hasOwnProperty( t ) ){ return true; } } return false; }catch(e){ console.log("ERROR : "+e); return e; } } 

तो आपको वाकई पहले एक संभावित समस्या की जांच करने की ज़रूरत नहीं है, आप इसे पकड़ लेते हैं और उसके साथ सौदा करते हैं कि आप कैसे चाहते हैं।

 function isEmpty(val){ return !val; } 

लेकिन यह समाधान अति-इंजीनियर है, यदि आप बाद में कारोबारी-मॉडल की ज़रूरतों के लिए फ़ंक्शन को संशोधित करने के लिए न लगे, तो इसे कोड में सीधे उपयोग करने के लिए क्लीनर है:

 if(!val)... 

मेरे मामले के लिए मैंने कोशिश की, अगर शून्य, '',! चर, लेकिन यह काम नहीं किया।

HTML कोड से टेक्स्ट प्राप्त करने के लिए नीचे अपना कोड देखें

 var status=$(this).text(); //for example (for my case) 

अगर स्थिति वैरिएबल में कोई मूल्य नहीं (कोई पाठ नहीं) था, तो मैं 'value' nvalue को स्टेटस चर में सेट करने की कोशिश कर रहा था।

निम्न कोड काम किया।

 if(status == false) { status='novalue'; } 

जब सैटस वेरिएबल के लिए कोई टेक्स्ट नहीं मिला था, तो ऊपर की कोड असाइन किए गए 'एनवल्यूएड' को स्टेटस चर में बदल दिया गया था