Отключить "использовать функциональную форму использования строгого", но оставить предупреждение "Отсутствует" в строгом "заявлении"

Я использую jslint для проверки своего кода.
Я использую "строгое" на всех моих страницах. Как я могу отключить сообщение "использовать форму функции" использовать строгую ", но сохранить предупреждение" Отсутствует "в строгом" утверждении ", поэтому я не забуду поставить его на новые файлы?

Спасибо

Ответ 1

Согласно сообщению Crockford, вы захотите обернуть все в функции...

(function () {
    "use strict";
    // the rest of your file goes here...
}());

Вместо этого вы можете использовать jshint, у которого есть опция globalstrict ", которая может сделать именно то, о чем вы просите, без необходимости обертывать все в функции

Ответ 2

Невозможно выполнить без изменения файла javascript, который управляет jslint.

Мне форма функции - неудобная рабочая практика, поэтому не может навязываться другим.

Не всем нужно комбинировать и минимизировать, но даже если бы я это сделал, я бы объединил код, который применял те же правила, таким образом, было бы достаточно описать файл.

Хотя jshint имеет именно ту функцию, которая вам нужна. Последний jslint теперь более продвинут, чем jshint, обнаруживает больше недостатков и справляется с более сложным кодом. Мне нравится jshint, но он не поддерживает работу с jslint.

Ответ 3

Решение, которое я нашел для этого, заключалось в создании одного строкового файла с "use strict"; и ничего больше

Сделайте первый файл в вашем конкатенационном пакете, добавьте его в список исключений jslint, переключите sloppy = true pragma

Возможно, есть некоторые побочные эффекты, не поднимающие неаккуратный код, но мое понимание документов заключается в том, что он просто проверяет "использовать строгий"; Линия

Ответ 4

Вот хак, чтобы подавить "Использовать форму функции" Использовать строгую ".

    $ uname -a
    Darwin 13.0.0 Darwin Kernel Version 13.0.0
  • Выясните, где находится ваш дистрибутив jslint.

    $ which jslint
    /usr/local/bin/jslint
    $ ls -l /usr/local/bin/jslint
    lrwxr-xr-x  1 root  admin  40 11 Feb  2013 /usr/local/bin/jslint -> ../lib/node_modules/jslint/bin/jslint.js
    $ cd /usr/local/lib/node_modules/jslint/
    $ ls
    LICENSE     README.md   lib     package.json
    Makefile    bin     node_modules
    
  • Прокомментируйте предупреждение.

    $ sudo vim lib/jslint.js
    
    search for 'function_strict'
    comment out the line 'warn('function_strict');'
    note: the exact line might vary on some versions but just comment it out.
    
  • Если это не работает, возможно, у вас установлено несколько версий jslint и не отредактированы правильно.

    sudo find / -name jslint.js