द्वारा निष्पादित किए जाने से कोड को रोकना, इसलिए मैं जावास्क्रिप्ट के साथ एक गेम लिख रहा हूं, और इसके साथ सबसे बड़ी समस्या यह है कि जो भी इसे खेल रहा है, जो जेएस का सभ्य ज्ञान हो सकता है, मेरा स्रोत कोड खोल सकता है, पता लगा सकता है यह कैसे काम करता है, फिर कंसोल में game.score = 100000000000000;
प्लग करें। हालांकि, ऐसा लगता है कि स्क्रिप्ट को obfuscating से अलग, एक अज्ञात समारोह में सब कुछ लपेटना चाल है।उपयोगकर्ता द्वारा
(function() {
game_start = function() {
//etc
}
//etc
})();
जब मैं कोशिश करते हैं और क्रोम कंसोल से कोड के किसी भी चलाने के लिए, यह undefined
के साथ आता है। यह वांछित परिणाम है, लेकिन क्या मेरी विधि के आसपास एक रास्ता है जो इसे बेकार प्रदान करेगा? या कंसोल से चीजों को चलाने के लिए भी एक बेहतर तरीका है?
क्लाइंट-साइड कोड * कभी * वास्तव में अविनाशी नहीं बनाया जा सकता है। –
और आप क्रोम में ब्रेकपॉइंट जोड़ सकते हैं और जो कुछ भी आप चाहते हैं उसे बदल सकते हैं। इसमें बहुत अधिक प्रयास करने से परेशान मत हो। सबसे अच्छा आप जिस साथ आने जा रहे हैं वह कोड को खराब/छोटा करना है ताकि इसे पढ़ना मुश्किल हो। uglifyjs –
जैसे कुछ देखें, http://glackoverflow.com/a/11960187/453277 –