2012-03-22 8 views
29

मैंने जावास्क्रिप्ट में ब्रेकपॉइंट लगाया और क्रोम के साथ कुछ कोड का परीक्षण कर रहा हूं। मैंने मूल्य के लिए एक घड़ी अभिव्यक्ति भी जोड़ा।क्रोम में देखे गए जावास्क्रिप्ट चर की प्रतिलिपि कैसे करें?

क्रोम ब्रेकपॉइंट पर टूट जाता है और मूल्य दिखाता है। हालांकि मूल्य बहुत लंबा है, और यह सब कुछ प्रदर्शित नहीं करता है। मैं विंडो सेपरेटर को बाईं ओर ले जाता हूं लेकिन यह मिड स्क्रीन पर रुक जाता है। जब मैं देखे गए चर पर डबल क्लिक करता हूं तो यह अभिव्यक्ति को संपादित करना चाहता है। जब मैं एकल क्लिक करता हूं और उस पर खींचता हूं, तो यह दृश्यमान पाठ का चयन करता है, लेकिन सभी नहीं। राइट क्लिक कुछ भी नहीं करता है।

यह मैं क्या देख

url: "m=mtgoxUSD&SubmitButton=Draw&r=&i=&c=0&s=&e=&Prev=&Next=&t=S&b=&a1=&m1=10&a2=&m2=25&x=0... 

मैं अंत में ... बिना पूरी अभिव्यक्ति की प्रतिलिपि बनाना चाहते है। मैं उसे कैसे कर सकता हूँ?

उत्तर

9

यहां मैं क्या करता हूं।

संपादित करें: यह स्कोप वैरिएबल में काम करता है जो वॉच एक्सप्रेशन पैनल के नीचे है।

  1. संपादन मोड पर स्विच करने के लिए मान पर डबल क्लिक करें।

  2. Ctrl + A (Windows) या Cmd + A (मैक) पूरे मूल्य का चयन करें।

  3. Ctrl + C (या Cmd + C) कॉपी करने के लिए।

+1

डबल क्लिकिंग देखे गए अभिव्यक्ति चर को संपादित करता है, यानी यूआरएल, मूल्य – siamii

+3

aaaah नहीं, क्षमा करें, अपनी पोस्ट को गलत पढ़ें .. मैं इसे स्कोप वैरिएबल सेक्शन में करता हूं। वहां काम करता है .. – Ben

+1

धन्यवाद, यह काफी अच्छा है, यह स्कोप वैरिएबल सेक्शन – siamii

27

कंसोल दिखाएं, फिर प्रदर्शित होने के लिए अभिव्यक्ति टाइप करें और दबाएं। आप पूरा मूल्य देखेंगे और आप इसे चुनने और कॉपी करने में सक्षम होंगे।

डिबगर रोक दिया गया है, वहीं यह और भी भाव है कि स्थानीय चर कि निष्पादन की वर्तमान बिंदु पर दायरे में हैं शामिल साथ काम करता है।

28

मैं लगभग 3 वर्षों के बाद देर से जवाब जोड़ रहा हूं क्योंकि मौजूदा क्रोम देव उपकरण के साथ, यदि आपके पास ऐरे है या उस चर में केवल एक नेस्टेड ऑब्जेक्ट प्रॉपर्टी है, तो दोनों उत्तरों के बाद आप बस समाप्त कर देंगे Array[size] या Object स्ट्रिंग्स को वास्तविक ऑब्जेक्ट वैल्यू में इंटरलेव किए गए स्ट्रिंग को कॉपी करना, जटिल ऑब्जेक्ट पदानुक्रमों के लिए पूरी तरह बेकार है। अगर आप सिर्फ मैन्युअल रूप से मूल्य के माध्यम से नेविगेट करने की आवश्यकता है, लेकिन अगर आप इसे कॉपी करने के लिए के रूप में प्रश्न में अनुरोध की जरूरत नहीं

सुझाव दिया दृष्टिकोण ठीक हैं।

क्या मैं बजाय सलाह देते हैं, आप एक नया चर की सामग्री के रूप में उपयोग करने देखा मान की प्रतिलिपि की जरूरत है, खासकर अगर, यह डंप के बाद इसे stringified कर दिया गया है सांत्वना देने है।

Javascript कंसोल और प्रकार दिखाएँ:

console.log(JSON.stringify(my_watched_var)) 

इस तरह पूरी संरचना शुद्ध जावास्क्रिप्ट, एक पूरी तरह से पुन: प्रयोज्य/copyable तरह से प्रदर्शित किया जाएगा।

+7

मुझे लगता है कि आप 'console.log()' के बजाय 'copy() 'का उपयोग करके इसे और बेहतर बना सकते हैं, जो सीधे आपके क्लिपबोर्ड पर स्ट्रिंग की प्रतिलिपि बनाता है। – hdgarrood

+0

नाइस !, यह भी बेहतर होगा अगर यह चर के प्रत्येक गुण के बीच लाइन ब्रेक जोड़ने के लिए कॉपी किए गए टुकड़ों को प्रारूपित कर सकता है। मैं नोटपैड ++ का उपयोग करके इसे प्रारूपित करने में सक्षम था। ", \ R \ n" के साथ सभी "," बदलें। – AXMIM

+1

'कॉपी () 'फ़ायरफ़ॉक्स में भी मेरे लिए काम किया। :) – cxw

1

यह उत्तर देखें "Is there a way to auto expand objects in Chrome Dev Tools?", यह किसी ऑब्जेक्ट के सभी गुणों को कम करता है और यह डेटाटाइप और मानों सहित पूर्ण पदानुक्रम दिखाता है।

उपयोगी आप एक आवेदन पत्र की दो राज्यों की तुलना करने की जरूरत है।

16

Chrome DevTools 'सांत्वना कमांड लाइन एक अंतर्निहित "कॉपी" समारोह है:

copy(my_variable) 

तो my_variable का मान एक स्ट्रिंग नहीं है, यह स्वचालित रूप से JSON में परिवर्तित हो जाएगा। परिणामस्वरूप स्ट्रिंग चिपकाने के लिए सिस्टम क्लिपबोर्ड पर छोड़ी गई है।

यहां reference doc है।

+0

इससे मेरे लिए विशेष रूप से लंबी स्ट्रिंग के लिए मदद मिली – lbsweek

संबंधित मुद्दे