यह एक चुनौती नहीं है बल्कि एक सवाल है, मुझे लगा कि इसकी वजह से यह विषय पर है
गैर-चुनौती वाले प्रश्न जो प्रोग्रामिंग पहेली को सुलझाने से संबंधित हैं या एक विशेष प्रकार की चुनौती भी विषय पर हैं।
अब इस सवाल पर:
क्या केवल 5 अक्षरों के साथ किसी भी जावास्क्रिप्ट कोड को लिखना संभव है? JSFuck पहले से ही 6 प्रतीकों के साथ ऐसा करता है !+[]()
लेकिन मुझे आश्चर्य है कि अगर !
चरित्र की आवश्यकता है।
JSFuck स्ट्रिंग के लिए कास्टिंग के संयोजन के साथ काम करता है (एक खाली सरणी जोड़कर), संख्या के लिए कास्टिंग (एक + सामने लिखकर) और नकारात्मक द्वारा बूलियन को कास्टिंग। उदाहरण के लिए:
[] \\ Empty array
+[] \\ Cast to number -> 0
!+[] \\ Negate -> true
!+[]+[] \\ Cast to string -> "true"
इस स्ट्रिंग से हम स्क्वायर ब्रैकेट का उपयोग करके सभी अक्षरों को अंदर की संख्या के साथ निकाल सकते हैं, और किसी भी संख्या को एक साथ सही जोड़कर कई बार बनाया जा सकता है।
इस तरह से बहुत सारे पत्र मिल सकते हैं और तार को समेटा जा सकता है। बनाने में सक्षम होने के लिए सबसे महत्वपूर्ण स्ट्रिंग है "constructor"
क्योंकि इसका उपयोग Function
किसी भी फ़ंक्शन से प्राप्त करने के लिए किया जा सकता है , और इस ऑब्जेक्ट का उपयोग स्ट्रिंग्स को जावास्क्रिप्ट के रूप में निष्पादित करने के लिए किया जा सकता है:
[]["find"] \\ the function Array.prototype.find
[]["find"]["constructor"] \\ the Function object
[]["find"]["constructor"](string)() \\ same as eval(string)
जैसा कि आप देख सकते हैं, !
यहाँ 2 उपयोग हैं:
- तार से अक्षरों का चयन करने के लिए संख्याएँ बनाना।
- पाने के लिए बूलियन के लिए कास्टिंग
"true"
और"false"
।
इन 2 में से पहला भी ++
incrementor का उपयोग करके किया जा सकता है , सीधे पर नहीं 0
, बल्कि इसे एक array के अंदर तत्वों पर इस्तेमाल किया जा सकता है:
+[] \\ 0
[+[]] \\ [0]
[+[]][+[]] \\ [0][0] -> 0
++[+[]][+[]] \\ ++[0][0]-> 1
++[[]][+[]] \\ also works because ++ casts to number
तो सभी नंबरों के बिना बनाया जा सकता है !
।
दूसरा मुश्किल ज्यादा है। अक्षरों में "true"
और के महत्व और , जो दोनों में दिखाई देते हैं । मैं पहले से ही अन्य सभी पत्र मिल गया है के माध्यम से , , और तार करने के लिए कार्य करता है कास्टिंग द्वारा।"false"
"r"
"s"
"constructor"
"constructor"
"undefined"
"Infinity"
"NaN"
तो अंतिम सवाल: (कैसे) आप केवल उपयोग करके बूलियन, या पत्र "r"
और "s"
जावास्क्रिप्ट बना सकते हैं +[]()
?
पत्र "l"
भी मदद कर सकता है। इसे फॉर्म प्राप्त किया जा सकता है null
लेकिन मैं उन 5 प्रतीकों के साथ उस मूल्य को प्राप्त करने में सक्षम हूं। उदाहरण के लिए इसका उपयोग मलहम प्राप्त करने के लिए किया जा सकता है यदि हमारे पास पहले से ही है "s"
:
[]["includes"]() \\ false
[+[]]["includes"](+[]) \\ true
पत्र "l"
और "k"
साथ में पहुँच देगा "r"
:
([]+[])["link"]() \\ "<a href="undefined"></a>"
बूलियन प्राप्त करने का कोई भी तरीका, null
या कोई भी पत्र r s l k
बहुत उपयोगी होगा!
हमारे पास जो कुछ है उसका एक पुस्तकालय:
Array.prototyp.find: [] ([([] [[]] + []] [(++ [[]] [+ []] + (++ [[]] [+ []] + (++ [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [(++ [[]] [+ []]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + ( ++ [[]] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] + []) [(++ [[]] [[]]) + (++ [[]] [[]])])] अनंत: + ((+ ([[]] [+]] + []] + ([[] [[]] + []] [(++ [[]] [+]] + (+) + [[]] [[]]) + (++ [[]] [[]])]) + (++ [[]] [[]] []) + (+ []) + (+ []) + (+ [])) NaN: + [] [[]] अपरिभाषित: [] [[]] 0: + [] 1: ++ [[]] [+ []] 2: (++ [[]] [+ []]) + (++ [[]] [+ []]) 3: (++ [[]] [+ []] + (++ [[]] [+ []] + (++ [[]] [+ []]) 4: (++ [[]] [+ []] + (++ [[]] [+ []] + + (+ [[]] [+]] + (+ []] ] [+ []]) 5: (++ [[]] [+ []]) + (++ [[]] [+ []] + + (++ [[]] [+ []] + (+ []] ] [+ []]) + (++ [[]] [[]]) 6: (++ [[]] [+ []] + (++ [[]] [+ []] + + (++ [[]] [+]] + (+ []] ] [+ []]) + (++ [[]] [[]]) + (++ [[]] [[]]) 7: (++ [[]] [+ []] + (++ [[]] [+ []] + + (++ [[]] [+ []] + + (+ []] ] [+ []]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) : (++ [[]] [+ []] + (+ [[]] [+ []] + + (+ [[]] [+]] + (+ []] ] [+ []]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) 9: (++ [[]] [+ []] + (++ [[]] [+ []] + + (++ [[]] [+]] + (+ []] ] [+ []]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) a: (+ [] [[]] + []] [+ + []] [+ []]] c: ([] [([([[]] [+]] [(++ [[]] [+ []] + + (+ [[]] [+]] + (++) [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [(++ [[]] [[ ]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [ []] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] [] ) [(++ [[]] [[]]) + (++ [[]] [[]])])] []) [(++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]])] d: ([] [[]] + []] [(++ [[]] [+ []]] + (++ [[]] [+ []]]] ई: ([] [[]] + []] [(++ [[]] [+ []]] + (+ [[]] [+ []] + (+ [[]] [] + []])] f: ([] [[]] + []] [(++ [[]] [+ []]] + (++ [[]] [+ []] + (+ [[]] [] + []]) + (++ [[]] [[]])] i: ([] [[]] + []] [(+ [[]] [+ []]] + (+ [[]] [+ []] + (+ [[]] [] + []]) + (++ [[]] [[]]) + (++ [[]] [[]])] n: ([] [[]] + []] [++ [[]] [+ []]] o: ([] [([([[]] [+]] [(++ [[]] [+ []]] + (+ [[]] [+]] + (+) [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [(++ [[]] [[ ]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [ []] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] [] ) [(++ [[]] [[]]) + (++ [[]] [[]])])] []) [(++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [+ []]) + (++ [[]] [[]])] t: (+ (((+ [[]] [+]] + []] + (([[[]] [+]] [(+ [[]] [+]] + (+) ++ [[]] [[]]) + (++ [[]] [[]])]) + (++ [[]] [[]] []) + (+ [] ) + (+ []) + (+ [])) + []) [(++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[] ])] u: ([] [[]] + []] [+]] v: ([] [((([[[]] + []] [(++ [[]] [+ []] + + (+ [[]] [+]] + (+) [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [(++ [[]] [[ ]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [ []] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] [] ) [(++ [[]] [[]]) + (++ [[]] [[]])])] []) [(++ [[]] [[]]) + (++ [[]] [[]]) + [] ((++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]))] y: (+ (((+ [[]] [+]] + []] + ([[[]] [+]] [(+ [[]] [+]] + (+) ++ [[]] [[]]) + (++ [[]] [[]])]) + (++ [[]] [[]] []) + (+ [] ) + (+ []) + (+ [])) + []) [(++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[] ]) + (++ [[]] [[]])] I: (+ ((+ ([[]]] [+]] + []] + ([[[]] [+]] [(+ [[]] [+]] + (+) ++ [[]] [[]]) + (++ [[]] [[]])]) + (++ [[]] [[]] []) + (+ [] ) + (+ []) + (+ [])) + []) [+ []] एन: (+ [] [[]] + []] [+ []] "": ([] [([([[[]] + []] [(++ [[]] [+ []] + + (+ [[]] [+]] + (+) + [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [(++ [[]] [+ []]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] [ ]) [(++ [[]] [[]]) + (++ [[]] [[]])])] []) [+ (++ [[]] [[] ] [] ((++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (+ + [[]] [[]]) + (++ [[]] [[]])))] (: ([] [([([[]] [+]] [(++ [[]] [+ []] + + (+ [[]] [+]] + (+) [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [(++ [[]] [[ ]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [ []] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] [] ) [(++ [[]] [[]]) + (++ [[]] [[]])])] []) [+ (++ [[]] [[]] + [] ((++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]])))] ): ([] [([([[]] [+]] [(++ [[]] [+ []] + + (+ [[]] [+]] + (+) [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [(++ [[]] [[ ]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [ []] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] [] ) [(++ [[]] [[]]) + (++ [[]] [[]])])] []) [+ (++ [[]] [[]] + [] ((++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]])))] {: ([] [([([[]] [+]] [(+ [[]] [+ []]] + (+ [[]] [+]] + (+) [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [(++ [[]] [[ ]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [ []] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] [] ) [(++ [[]] [[]]) + (++ [[]] [[]])])] []) [+ (++ [[]] [[]] + [] ((++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]])))] }: ([] [([([[]] [+]] [(++ [[]] [+ []] + + (+ [[]] [+]] + (+) [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [(++ [[]] [[ ]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [ []] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] [] ) [(++ [[]] [[]]) + (++ [[]] [[]])])] []) [+ ((++ [[]] [[] ]) + (++ [[]] [[]]) + (++ [[]] [[]]) + [] ((++ [[]] [[]]) + ( ++ [[]] [[]])))] ।: (+ (+ + [[]] [+]] + [] + (+ [[]] [+ []]] + ([] [[]] + []] [+] []] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]])] (++ [[]] [[] ] [] (+ []) + (+ []))) + []) [++ [[]] [[]]] ,:[[]] [([] [(([] [[]] []) [(++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [(++ [[]] [+ []]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + ( ++ [[]] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] + []) [(++ [[]] [[]]) + (++ [[]] [[]])])] []) [(++ [[]] [[ ]]) + (++ [[]] [[]]) + (++ [[]] [[]])] ([] [(([] [[]] []) [ (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [ + []])]) + (([] [[]] []) [(++ [[]] [[]]) + (++ [[]] [[]]) + ( ++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]])]) + (([] [[] ] []) [++ [[]] [[]]]) + (([] [[]] []) [(++ [[]] [[]]) + (++ [[]] [[]])])] []) [(++ [[]] [[]]) + (++ [[]] [[]]) + (++ [ []] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]] )] ([] [[]] []) [++ [[]] [[]]] ([] [(([] [[]] []) [(++ [[ ]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) ]) + (([] [[]] []) [(++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[] ] [+ []]) + (++ [[]] [[]]) + (++ [[]] [[]])]) + (([] [[]] []) [++ [[]] [[]]]) + (([] [[]] []) [(++ [[]] [[]]) + (++ [[]] [ + []])])] []) [(++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]])] (+ [] [[]] []) [++ [[]] [[]]] + (+ ((++ [[]] [[]] []) + (([] [[]] + []) [(++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]])]) + ( ++ [[]] [[]] []) + (+ []) + (+ []) + (+ [])) + []) [(++ [[]] [[] ]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[]] [[]]) + (++ [[ ]] [[]]) + (++ [[]] [[]])]] ([[]]) + []
eval
साथ 2453 चर मिले window
।