Как установить' use strict ' глобально с JSLint

Я новичок в javascript и пытаюсь проверить через JSLint. Где я должен поставить "use strict", чтобы использовать его глобально и проверять?

Это дает мне ошибку "неожиданное выражение" использовать strict " в позиции оператора.":

    "use strict";
    console.log('doing js in head-section');

    function helloWorld() {
        console.log('called function helloWorld()');
        alert('Hello World from a JS function showing an alert!');
    }

    function helloMyNumber() {
        console.log('called function helloMyNumber()');
        var max = 42;
        var yourLuckyNumber = prompt('Enter your lucky number (between 1 and '+ max +')');
        var myLuckyNumber = Math.floor(Math.random()*(max+1));
        var paragraph = document.getElementById('luckynumber');
        paragraph.innerHTML = paragraph.innerHTML + ' Your lucky number is: ' + yourLuckyNumber + '. Mine is: ' + myLuckyNumber + '. They ' + (yourLuckyNumber == myLuckyNumber ? 'DID ' : 'did NOT ') + 'match!';
    }



    console.log('doing JS in body-section');
    document.writeln('<p class="green">Hello World from JS within a body-section in HTML!</p>');

2 ответов


по данным документация на browser опция для JSLint автоматически отключает использование "use strict"; на глобальном уровне. Насколько мне известно, его невозможно включить.

вы можете отключить опцию браузера и получить те же самые predeclared globals, что и browser опции с помощью:

/*global
Audio, clearInterval, clearTimeout, document, event, history, Image, location, name, navigator, Option, screen, setInterval, setTimeout, XMLHttpRequest
*/

поочередно вы можете обернуть весь свой код в IIFE и использовать "use strict"; в верхней части его.

поочередно вы можете переключаться к JSHint (больше вариантов), и использовать его разрешить "use strict"; на глобальном уровне.


'use strict' обычно используется в начале функций. Для вашего кода я бы просто обернул все это в IIFE, что сделало бы "use strict" действительным

(function() {
    "use strict";
    console.log('doing js in head-section');

    function helloWorld() {
        console.log('called function helloWorld()');
        alert('Hello World from a JS function showing an alert!');
    }

    function helloMyNumber() {
        console.log('called function helloMyNumber()');
        var max = 42;
        var yourLuckyNumber = prompt('Enter your lucky number (between 1 and '+ max +')');
        var myLuckyNumber = Math.floor(Math.random()*(max+1));
        var paragraph = document.getElementById('luckynumber');
        paragraph.innerHTML = paragraph.innerHTML + ' Your lucky number is: ' + yourLuckyNumber + '. Mine is: ' + myLuckyNumber + '. They ' + (yourLuckyNumber == myLuckyNumber ? 'DID ' : 'did NOT ') + 'match!';
    }



    console.log('doing JS in body-section');
    document.writeln('<p class="green">Hello World from JS within a body-section in HTML!</p>');
})();