कंसोल में लॉग इन करने के लिए कोड ब्लॉक प्राप्त करने में समस्या आ रही है

काम नहीं करता। कंसोल में कुछ भी लॉग नहीं है

var data = {"_id": "615fc3db8b6a6311aa3295ca", "isComplete": false, "remindTime": {"date": "2021-10-08", "time": "12:08:40 am"}, "subtitle": "Fdfdff", "title": "Dfdf"}

if (data.length > 0) {
    console.log('my data', data);
}

क्या काम करता है:

var data = {"_id": "615fc3db8b6a6311aa3295ca", "isComplete": false, "remindTime": {"date": "2021-10-08", "time": "12:08:40 am"}, "subtitle": "Fdfdff", "title": "Dfdf"}

if (data.title) {
    console.log('my data', data);
}

सुनिश्चित नहीं है कि क्या गलत हो रहा है

-1
Jerry Seigle 8 अक्टूबर 2021, 07:49

3 जवाब

सबसे बढ़िया उत्तर

आप एक सादे जेएस ऑब्जेक्ट पर लंबाई की संपत्ति के लिए परीक्षण कर रहे हैं कि आपने स्पष्ट रूप से लंबाई की संपत्ति नहीं रखी है।

लंबाई के लिए परीक्षण ऐसा लगता है जैसे आप इसे एक सरणी होने की उम्मीद कर रहे हैं।

यह कंसोल में इसे चलाने के समान होगा, आप अपरिभाषित हो जाएंगे।

({}).length

यदि आप इसे लॉग करना चाहते हैं यदि यह एक वस्तु है:

if (data) {
    console.log('my data', data);
}

यदि आप इसे लॉग करना चाहते हैं यदि इसमें कोई गुण है:

if (Object.keys(data).length) {
    console.log('my data', data);
}
1
AlienWithPizza 8 अक्टूबर 2021, 07:55

आपके मामले में - data एक सरणी नहीं है, यह एक वस्तु है। किसी ऑब्जेक्ट में कुंजियों की संख्या खोजने के लिए आपको Object.keys(data).length का उपयोग करना होगा। https://developer.mozilla.org/ en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys

1
mel 8 अक्टूबर 2021, 07:55

ऑब्जेक्ट की कोई लंबाई संपत्ति नहीं है। यदि आप वस्तु के अस्तित्व की जाँच करना चाहते हैं, तो बस इसे लिखें:

if (data) {
    // executable code
}

यह जांच करेगा कि वस्तु में कोई संपत्ति है या नहीं।

0
Ahmmed Abir 8 अक्टूबर 2021, 08:01