2016-04-17 4 views
2

Я смотрел на moment.js source code, и я заметил, что первый символ (после комментариев) представляет собой полутень. Какой цели это служит? Имеет ли она практическую роль в обеспечении безопасности в Интернете, что-то мешает?Зачем запускать скрипт с полутолком?

Здесь:

;(function (global, factory) { 

ответ

1

Один линия ответ безопасно сцепить несколько файлов JavaScript. использованием semi-colon не поднимать вопрос

Предположим, у вас есть несколько функций

IIFE 1

(function(){ 
    //Rest of code 
})(); // Note it is a IIFE 

IIFE 2

(function(){ 
    // Rest of code 
})(); // Note it is also IIFE 

На конкатенации может выглядеть

(function(){})()(function(){})() 

Но если добавить semi-colon до функции он будет выглядеть

;(function(){})();(function(){})() 

Так, добавив ; он ухаживает, если любое выражение не правильно прекращено.

Пример 2

Предположим, у вас есть файл JS с файл а переменная

var someVar = "myVar" 

Другой JS с некоторой функцией

(function(){})() 

Теперь на конкатенации он будет выглядеть

var someVar ="myVar"(function(){})() // It may give rise to error 

С semi-colon это будет выглядеть

var someVar ="myVar";(function(){})() 
Смежные вопросы