javascript - JSHint 重新定义警告并向对象添加更多属性

标签 javascript jshint

我有跨越多个文件的对象定义,我使用以下语法向命名空间添加更多属性

var app = app || {};

// and then
app.namespace = {
  ...
}

但是 JSHint 会用类似的东西警告我:

[L1:C5] W079: Redefinition of 'app'.
var app = app || {};

我不确定这是否真的是错误的,因为我已经看到它被使用了很多次,例如连同模块模式。

如果没问题,我如何才能全局禁止该警告?我找到了一种方法来抑制给定文件的给定选项

/* jshint: -W079 */ 

但是有没有办法在全局范围内做到这一点?或者它被认为是不好的做法?

最佳答案

使用这个:

window.app = window.app || {};

您正在尝试将局部变量 app 分配给全局变量 app

关于javascript - JSHint 重新定义警告并向对象添加更多属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18892441/

相关文章:

javascript - Array.reduce 和递归

jslint - JSHint:如何禁用对不安全字符注释的检查?

javascript - gulpjs 添加回以前忽略的路径?

javascript - JSHint 忽略 `!function(){/* ... */}()` 模式

javascript - 检测长按 caph-list 项目上的 Enter/OK 键

javascript - 使用 javascript asp mvc 调用操作方法

javascript - Cypress 在命令日志中看不到请求

javascript - 按日期排序,然后按位置排序

javascript - 我们如何不允许在我的代码库中使用硬选项卡?我们正在使用 JSHint

node.js - 删除自动生成的 scsslint_tmp 文件?