簡體   English   中英

javascript變量顯示意外結果

[英]javascript variable showing unexpected result

為什么我收到ReferenceError:在控制台中找不到變量lang1 如果lang存在,lang1也不應存在嗎?...

<body>
    <input id="datetimepicker" type="text" placeholder="Datetimerpicker">
        <input id="lang" type="text" placeholder="language" value="en"><div class="select">select language</div>

    <script>
     $(".select").click(function(){
        var lang = $('#lang').val();
        var lang1 = lang;
    });
    </script>
</body>

lang = "en"不應該嗎? 我越來越lang = <input id=​"lang" type=​"text" placeholder=​"language" value="en">​在控制台

如果要為功能使用瀏覽器調試工具,則必須按照工具的意圖進行操作。 僅在控制台命令提示符下鍵入langlang1並不能真正完成您想要的操作。 在這種情況下,符號lang將引用通過將lang用作<input>字段的“ id”而隱含地創建的全局符號。

您可以使用這些工具在事件處理程序中設置斷點。 一種簡單的方法是將debugger語句添加到“ click”處理程序的開頭:

 $(".select").click(function(){
    debugger;
    var lang = $('#lang').val();
    var lang1 = lang;
});

從那時起,調試工具將為您提供一種查看活動函數(以及使您到達那里的函數)中變量值的方法。

您無法在控制台中引用langlang1 ,因為它們在單擊關閉時位於本地。 在控制台中定義lang的原因是它將使用與您的變量匹配的任何元素ID。 將變量更改為langX,您將遇到相同的錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM