簡體   English   中英

為什么我收到with語句的語法錯誤,但實際上並沒有使用?

[英]Why I got this Syntax error of with statement, but i'm not actually using any?

在以下代碼中,我沒有使用任何“ with語句”,但是當我設置斷點時,它給了我錯誤:

SyntaxError: 'with' statements are not valid in strict mode

(function () {
    'use strict';
    function addItem() {
        var orderListElement, newLi, childCount;
        orderListElement = document.getElementById('orderList');
        newLi = document.createElement('li');
        childCount = orderListElement.children.length;
        newLi.textContent = 'new item ';
        orderListElement.appendChild(newLi);
    }
    function deleteItem() {
        var orderListElement, lastLi;
        orderListElement = document.getElementById('orderList');
        lastLi = orderListElement.lastChild;
        orderListElement.removeChild(lastLi);
    }
    function registHandler() {
        var addItemButton, deleteItemButton;
        addItemButton = document.getElementById('addItem');
        deleteItemButton = document.getElementById('deleteItem');
        addItemButton.addEventListener('click', addItem, false);
        deleteItemButton.addEventListener('click', deleteItem, false);
    }
    window.addEventListener('load', registHandler, false);
}());

真煩人

這似乎是Safari的一個已知問題: https : //bugs.webkit.org/show_bug.cgi? id =65829

要重現該錯誤,您只需要在斷點處停止和嚴格模式下在控制台中鍵入任何代碼即可。

以下是錯誤報告中的代碼:

(function(){
    "use strict";
    debugger;
})();

因此,當您在斷點處時,轉到控制台並鍵入2+3 (或任何表達式),您將收到錯誤消息。

在此處輸入圖片說明

暫無
暫無

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

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