相关疑难解决方法(0)

当尝试更改它时,有没有办法让"Object.frozen"对象抛出警告?

我使用Object.freeze作为防止自己违反自己规则的手段.当我试图做出错误的任务时,我希望Object.freeze能和我说话.但是,Object.freeze只是让分配无声地失败!例如,如果我这样做

/*
 * Frozen singleton object "foo".
 */
var foo = (function() {
  var me = {};

  me.bar = 1;

  if (Object.freeze) {
    Object.freeze(me);
  }

  return me;
})();

foo.bar = 2;
console.log(foo.bar);
Run Code Online (Sandbox Code Playgroud)

控制台将记录"1",但我不知道我做了一个错误的任务.这当然会导致我的代码中出现危险的意外行为,当冻结对象的整个点是为了避免意外.事实上,我更有可能通过不冻结对象,让错误的分配发生,以及稍后由于错误的值导致我的代码失败而得到详细的错误输出.

我想知道JavaScript是否在任何浏览器中都有任何隐藏的"不可变对象警告"编译指示,以便我可以知道何时尝试改变"Object.frozen"对象.

javascript console warnings object

16
推荐指数
1
解决办法
2679
查看次数

标签 统计

console ×1

javascript ×1

object ×1

warnings ×1