2011-01-07 14 views
21
var obj = { 
    'foo' : 'bar', 
    'something very, very, very, very long' : 'baz' 
}; 

उस संपत्ति का नाम कितना समय हो सकता है इस पर कोई सीमाएं?जावास्क्रिप्ट संपत्ति की लंबाई पर सीमा क्या है?

+6

मैं सिर्फ 1 मिलियन से अधिक वर्ण में से एक के साथ बनाने की कोशिश की बताए शुरू कर दिया। क्रोम में ठीक काम किया। अगर मैं एक सीमा मारा तो आपको पोस्ट रखेगा :) –

+0

@ डेविड लॉल! यह बहुत मजेदार है। – Stephen

+1

@ डेविड, अगर आप इसे उत्तर में रखते हैं, तो मैं आपको चेक मार्क दूंगा। – sprugman

उत्तर

20

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

मेरे परीक्षणों के दौरान, एक 268 435 456 वर्णों के साथ एक संपत्ति युक्त एक वस्तु बनाने में कामयाब रहा, लेकिन 536 870 9 12 पर फिर से प्रयास कर रहा था, मेरा ब्राउज़र दुर्घटनाग्रस्त हो गया।

मुझे विश्वास नहीं है कि यह देखने के लिए कोई दिलचस्पी होगी कि मेरी दहलीज उस से अधिक सटीकता के साथ कहां है, क्योंकि इससे साबित होना चाहिए कि वहां की कोई भी सीमा पूरी तरह से मशीन की क्षमता से लगाई गई है, बल्कि चश्मा की तुलना में।

ओह, और 67 108 864 वर्ण में, मैं प्रदर्शन के मुद्दों देख जब गुण :)

+2

विनिर्देश में पहचानकर्ताओं की लंबाई पर एक सीमा शामिल नहीं है, इसलिए मेरा मानना ​​है कि यह केवल कार्यान्वयन परिभाषित है। – ChaosPandion

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