2012-02-25 27 views
9

दुर्घटनाग्रस्त Firebug के कंसोलसरल जावास्क्रिप्ट कोड Firefox

var a = []; 
a[0] = a; 

दुर्घटनाग्रस्त Firefox में!

क्यों?

संपादित करें:

  1. यह बयान तार्किक रूप से सही है, और प्रत्यावर्तन संदर्भित बारे में बुरा कोई बात नहीं है। इसके लिए ब्राउज़र फ़ायरबग में यह एक बग है।
  2. क्रोम और ओपेरा में ठीक काम करता है।
  3. मैं Firebug और Firefox
  4. के अंतिम आधिकारिक संस्करण का उपयोग कर रहा

संपादित 2: यह Firebug कंसोल में दुर्घटनाओं और देशी Firefox वेब कंसोल में काम करता है

+0

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

+0

@GGG हम्म, एक ही सरणी के पहले इंडेक्स (या किसी भी इंडेक्स) में पहली सरणी निर्दिष्ट करते समय, असाइनिंग हमेशा के लिए जारी रहता है। क्या यह एक दुर्घटना नहीं है? – Teemu

+0

@Teemu nope, इसे कंसोल में आज़माएं ... यह एक ऑब्जेक्ट बनाता है जो एक संपत्ति के साथ स्वयं को संदर्भित करता है, लेकिन यह असामान्य नहीं है ('window.self',' window.top', आदि)। –

उत्तर

4

मुझे लगता है कि यह एक फायरबग बग है।

यह अंतर्निहित फ़ायरफ़ॉक्स कंसोल (ctrl + shift + k), क्रोम कंसोल, और ओपेरा कंसोल में ठीक काम करता है।

मैं फ़ायरबग के साथ एक बग रिपोर्ट दर्ज करूंगा।

+1

बग: http://code.google.com/p/fbug/issues/detail?id=3663 – Kato

2

स्वाभाविक गलत कर रही कुछ भी नहीं है लेकिन आप, एक डेटा संरचना का निर्माण कर रहे हैं जिसमें "शामिल है" (वास्तव में स्वयं का संदर्भ होता है)।

जब संरचना इस तरह प्रदर्शित करता है, तो कोड इस संभावना यह संभावना है कि डिबगर हमेशा के लिए recurse होगा (अप करने के लिए इतना :-)) है करने के लिए सोच नहीं लिखा गया है, अनंत श्रृंखला के अंत करने के लिए प्राप्त करने की कोशिश

a[0][0][0][0]... 
+2

दिलचस्प बात यह है कि यह क्रोम में ठीक काम करता है, जो कि इसे विस्तारित करने के बाद केवल किसी ऑब्जेक्ट के गुणों का निरीक्षण करता है। अब मुझे आश्चर्य है कि कैसे 'top.top.top ...' फायरबग तोड़ नहीं है। –

+0

चलो! यह एक [0] [0] .... नहीं बनाता है! यह संदर्भ मान्य है लेकिन इसके लिए कोई अलग वस्तु नहीं है, यह संदर्भित है __a__ – Viller

+0

@ विल्लर: किसी ने भी ऐसा नहीं कहा। समस्या यह है कि अगर स्ट्रिंग प्रस्तुति में कनवर्ट करने के लिए फ़ायरबग का उपयोग किया जाता है तो एल्गोरिदम स्वयं-संदर्भ वाले सरणी को संभालने में सक्षम होता है। – 6502

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