问题标签 [strict]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
882 浏览

perl - 可以“使用严格”警告而不是错误

使用use strictperl 时会在不安全的构造上生成运行时错误。现在我想知道是否可以让它只打印一个警告而不是导致运行时错误?还是use warnings(或-w)警告同样的问题?

0 投票
2 回答
1778 浏览

arrays - 如何避免使用“严格”时产生的这个错误?

use strict;如果被注释掉,我有几行代码可以工作。但是,我不想仅仅因为一小部分就禁用整个脚本。

我需要重新编码,或者以某种方式use strict;暂时禁用然后重新启用它。第一个选项更现实,但我不知道如何更改代码以在严格模式下工作。


启用use strict;

在 ./return5.pl 第 49 行使用“strict refs”时,不能使用字符串(“0”)作为 ARRAY 引用。

(第 49 行push @{ $ctc_rec[$i] }, $results[0];:)


禁用use strict;


如何重写此代码,使其像禁用严格模式一样工作?如果这是不可能的,可以use strict;暂时禁用,然后在脚本中为这段短代码重新启用?

0 投票
1 回答
8545 浏览

mysql - 如何全局启用mysql严格模式并保持开启状态?

如何全局启用 MySQL 严格模式并使其保持开启状态?

我试过这些命令:

但他们只为当前会话设置模式。

0 投票
3 回答
1964 浏览

c - 由于函数指针,夹板警告“语句无效”

我正在尝试使用 Splint(在严格模式下)检查 C 程序。我用语义注释对源代码进行了注释,以帮助 Splint理解我的程序。一切都很好,但我就是无法摆脱警告:

语句无效(可能通过调用不受约束的函数 my_function_pointer 进行未检测的修改)。

语句没有可见的效果 --- 没有值被修改。它可以通过调用不受约束的函数来修改某些内容。(使用 -noeffectuncon 禁止警告)

这是由通过函数指针的函数调用引起的。我不喜欢使用no-effect-uncon标志,而是写更多的注释来修复它。所以我typedef用适当的@modifies条款装饰了我的,但 Splint 似乎完全忽略了它。问题可以简化为:

我已经阅读了手册,但是关于函数指针及其语义注释的信息并不多,所以我不知道是我做错了什么还是这是某种错误(顺便说一下,这里还没有列出:http ://www.splint.org/bugs.html )。

有没有人成功地在严格模式下使用 Splint 检查了这样的程序?请帮我找到让夹板开心的方法:)

提前致谢。

更新 #1: splint-3.1.2(windows 版本)产生警告,而 splint-3.1.1(Linux x86 版本)没有抱怨。

更新#2: Splint 不在乎分配和调用是的还是的:

更新#3:我对禁止警告不感兴趣。这很容易:

我正在寻找的是正确的表达方式:

“这个函数指针指向一个函数@modifies,所以它确实有副作用”

0 投票
1 回答
239 浏览

html - Vim 语法文件对 HTML 语法更严格

我刚被一个虫子咬了

而不是

似乎 vim 的 html 语法突出显示并没有区分两者。我可以从某个地方获得更严格的语法文件吗?

(对于仇恨者:vim 问题属于 stackoverflow,而不是 superuser

0 投票
2 回答
928 浏览

jquery - 符合标准的等效于 target="_blank"

在某些情况下,我必须在新窗口/标签中打开链接。有没有一种方法对严格的 HTML 有效?使用 jQuery 这样做是可以接受的,但我宁愿不只是将target="_blank"s 偷偷带回 w/jQuery,这样验证器就不会看到它们。

0 投票
1 回答
2317 浏览

javascript - JavaScript:严格模式和匿名函数

几乎我所有的 JS 文件都包装在匿名函数中。如果我"use strict";在匿名函数之外包含,严格模式是否仍适用于匿名函数?

例如,下面脚本中的匿名函数内部是否应用了严格模式:

0 投票
3 回答
25042 浏览

javascript - 使用此关键字和显示模块模式的严格违规

无法让以下内容通过 jslint/jshint

我知道它是由this在函数声明中使用引起的,但我读了 Crockford 写的一些东西,他说违规是为了防止全局变量污染 - 但这里唯一的全局变量是我明确定义的那个...... myModule. 其他所有内容都保存在直接函数范围内,我应该可以this用来引用模块。

有什么想法可以让这种模式通过吗?

更新:如果我使用函数表达式而不是声明,这似乎有效,即

不过,我不喜欢这种格式,更喜欢让函数名和命名参数更接近,并且声明看起来/感觉更干净。老实说,我不明白为什么会引发违规行为——这种模式没有理由这样做。

0 投票
3 回答
20350 浏览

javascript - 这会在全球范围内启用“使用严格”吗?

与如何在全局范围内启用 ECMAScript “使用严格”类似,但又不一样

我已经购买了JavaScript Patterns,它建议启用 use strict。将它添加到两打 javascript 文件中会有点麻烦,因此在全球范围内启用它会很好。我最初想像这样添加到我的 main.js 的顶部:

但是,我随后认为它可能只会为该文件启用它。然后我想到了这个:

这些中的任何一个都会全局启用 ECMAScript 5 严格模式吗?

0 投票
3 回答
1056 浏览

javascript - Javascript:除了“use strict”,还有哪些其他“use”指令?

此外use strict,还有哪些其他use指令?