2017-05-08 4 views
0

私は、1から10の間の数字を推測しなければならないオンライン宝くじシステムを作成しようとしています。数字がjavascriptの乱数と一致すれば、彼は宝くじに当選します。私が使用した方法は次のとおりです。ローカルのjavascript変数をユーザーコンソールで読み取ることはできますか?

!function(){ 
 
    var x = Math.floor((Math.random() * 10)); 
 
    var btn = document.getElementById("btn"); 
 
    btn.addEventListener("click", function(){ 
 
    var user_input = document.getElementById("text").value; 
 
    if(user_input == x) { 
 
     alert("Won Lottery", user_input, x); 
 
    } 
 
    else { 
 
     alert(user_input + x + "sorry"); 
 
    } 
 
    }); 
 
}();
<h2>Guess a number between 1 and 10 </h2> 
 
<input id="text" type="text"> 
 
<button id="btn" type="submit">Submit</button>

私の質問があり、ハッカーはJSコンソールを開き、何とか地元x変数の値を見つけることができますか?コード実行のこの時点で

+0

はい。ブラウザを制御している人は、あなたのコードをすべて見ることができ、任意の値を操作することができます。 (この場合はややこしいかもしれませんが、基本的な点はブラウザをまったく信用できないことです;クライアント*がブラウザであることを保証することさえできません) – Pointy

+0

@Pointy 'x'変数?グローバルではないので、 'window.x'で読むことができます。 – user31782

+0

xがスコープ内にあるときに実行を一時停止するためにブレークポイントを置くことができます – scoon1329

答えて

2

enter image description here

、Xが範囲内です。右の列にx = 0が表示されているので、user_inputを0に変更してから実行を終了することができます。

関連する問題