Chrome कंसोल में पूर्ण ऑब्जेक्ट कैसे दिखाएं?


155
var functor=function(){
    //test
}

functor.prop=1;

console.log(functor);

यह केवल फ़नकार के कार्य भाग को दिखाता है, फ़नकार के गुणों को कंसोल में नहीं दिखा सकता है।

जवाबों:


245

console.dir()एक ब्राउज़-सक्षम ऑब्जेक्ट को आउटपुट करने के लिए उपयोग करें जो आप .toString()संस्करण के बजाय इसके माध्यम से क्लिक कर सकते हैं :

console.dir(functor);

एक जावास्क्रिप्ट निर्दिष्ट वस्तु का प्रतिनिधित्व करता है। यदि लॉग की जा रही वस्तु एक HTML तत्व है, तो इसके DOM प्रतिनिधित्व के गुण मुद्रित होते हैं [1]


[1] https://developers.google.com/web/tools/chrome-devtools/debug/console/console-reference#dir


1
यह ध्यान दिया जाना चाहिए कि varNameक्रोम कंसोल में केवल मुद्रण और एन्टर हिटिंग के समान प्रभाव देता है console.dir(varName)
वडज़िम

118

यदि आप प्रयास करते हैं तो आपको बेहतर परिणाम मिल सकते हैं:

console.log(JSON.stringify(functor));

यह उत्तर बहुत अच्छा है, लेकिन मुझे लगता है कि ऊपर के नमूने के साथ काम नहीं करता है, एक नए टैब में कोशिश की और अपरिभाषित लौटाता है
aitorllj93

1
इस उत्तर के लिए सभी उचित सम्मान के साथ, आखिरकार यह ऑब्जेक्ट का प्रतिनिधित्व करने वाला एक स्ट्रिंग देता है, और कंसोल में "ब्राउन करने योग्य" ऑब्जेक्ट नहीं है, जैसे प्रश्न यहां सभी के बारे में है। सही है, यदि आप JSON.parse के माध्यम से इस आउटपुट स्ट्रिंग को चलाते हैं, तो यह अपने ऑब्जेक्ट-फॉर्मेट में वापस आ जाएगी, लेकिन तब कंसोल अभी भी इसे ".toString ()" दिखाएगा और हम एक वर्ग में वापस आ जाएंगे। "कंसोल.डियर" के उपयोग के साथ यहां उत्तर हाथ में प्रश्न के लिए सबसे उपयुक्त है।
theCuBeMan

21

यदि आप प्रयास करते हैं तो आपको और भी बेहतर परिणाम मिल सकते हैं:

console.log(JSON.stringify(obj, null, 4));

यह उत्तर आउटपुट को स्वरूपित करके @ बस्तीबैन पर सुधार करता है।
Xeoncross

12
var gandalf = {
  "real name": "Gandalf",
  "age (est)": 11000,
  "race": "Maia",
  "haveRetirementPlan": true,
  "aliases": [
    "Greyhame",
    "Stormcrow",
    "Mithrandir",
    "Gandalf the Grey",
    "Gandalf the White"
  ]
};
//to console log object, we cannot use console.log("Object gandalf: " + gandalf);
console.log("Object gandalf: ");
//this will show object gandalf ONLY in Google Chrome NOT in IE
console.log(gandalf);
//this will show object gandalf IN ALL BROWSERS!
console.log(JSON.stringify(gandalf));
//this will show object gandalf IN ALL BROWSERS! with beautiful indent
console.log(JSON.stringify(gandalf, null, 4));

8

यह मेरे लिए पूरी तरह से काम किया:

for(a in array)console.log(array[a])

आप निकाले गए इस डेटा के क्लीनअप और पोस्टीरियर उपयोग को बदलने / बदलने के लिए कंसोल में बनाई गई किसी भी सरणी को निकाल सकते हैं


3
थोड़ा और विस्तृत:for (i in arr) { console.log(i); console.log(arr[i]); }
जियो

यह ऐसे गुणों और विधियों का उत्पादन नहीं करेगा, जो नामुमकिन नहीं हैं
बारू बारबु

0

मैंने कंसोल में चीजों को आसानी से प्रिंट करने के लिए एक फ़ंक्शन लिखा।

// function for debugging stuff
function print(...x) {
    console.log(JSON.stringify(x,null,4));
}

// how to call it
let obj = { a: 1, b: [2,3] };
print('hello',123,obj);

कंसोल में आउटपुट होगा:

[
    "hello",
    123,
    {
        "a": 1,
        "b": [
            2,
            3
        ]
    }
]

0

आधुनिक ब्राउज़रों के साथ, console.log(functor)पूरी तरह से काम करता है (वही व्यवहार करता है console.dir) ए ।


0

मैंने ट्राइडेंट डी'गाओ जवाब का एक समारोह बनाया।

function print(obj) {
  console.log(JSON.stringify(obj, null, 4));
}

इसे कैसे उपयोग करे

print(obj);

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.