Javascript 为什么我得到with语句的这个语法错误,但是我';我实际上没用过?

Javascript 为什么我得到with语句的这个语法错误,但是我';我实际上没用过?,javascript,Javascript,在下面的代码中,我没有使用任何“with语句”,但当我设置断点时,它给出了错误: SyntaxError:'with'语句在严格模式下无效 (function () { 'use strict'; function addItem() { var orderListElement, newLi, childCount; orderListElement = document.getElementById('orderList');

在下面的代码中,我没有使用任何“with语句”,但当我设置断点时,它给出了错误:

SyntaxError:'with'语句在严格模式下无效

(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的一个已知问题:

要再现错误,只需在断点处停止并处于严格模式时在控制台中键入任何代码

以下是错误报告中的代码:

(function(){
    "use strict";
    debugger;
})();
因此,当您在断点处时,转到控制台并键入
2+3
(或任何表达式),您将得到错误


我在Chrome中没有发现错误。顺便说一句,我使用的是safari 6.0,在OS X Lion上的safari 5中没有问题。页面上还有其他JavaScript代码吗?您是否使用旧版本的文件进行缓存?刷新页面并不保证您有未缓存的文件。