2017-04-09 2 views
-4

1.declare 함수자바 스크립트와 다른;

function function_name(parametres) { 

} 

2.call 기능

function_name(x) OR function_name(x); 

는 차이는?

+0

무엇이 당신의 질문입니까? –

+0

줄 끝 부분에 세미콜론을 넣지 않으면 엔진은 세미콜론 삽입을 통해 세미콜론을 삽입하려고합니다. –

답변

4

아니요, 그 자체에는 차이가 없습니다. 줄 끝의 세미콜론은 선택 사항입니다. 단일 행에 둘 이상의 명령문을 넣으려면 필수입니다. 당신이 문을 분리하기 위해 반도체를 사용하는 경우

한편
function_name(x) another_function(x) 
// Will throw: SyntaxError: missing ; before statement 

, 그것은 작동합니다

function_name(x); another_function(x) 
// Will execute both. This is the same same as this: 
function_name(x) 
another_function(x) 
+0

정확하지만 세미콜론을 사용하는 것이 좋은 습관이라고 언급 할만한 가치가 있습니다. – baao

+0

개인적으로 동의하는 동안 "좋은 습관"은 올바른 방법이라고 말하지 않습니다. ES6의 일반적인 관습은 필요하지 않은 곳에서 그들을 버리는 것입니다. Vue.js 템플릿 (예를 들면)은 실제로 ESLint 설정을 사용합니다.이 ESLint 설정은 실제로는 부제 세미콜론으로 사용합니다. 이것은 아마도 일부 탭 대 공간 종류의 것입니다. – MildlySerious

+0

나는 용어에 대해 잘 모르겠지만, Google의 스타일 가이드가 의미있는 것을 알 수 있습니다. 다음에서 찾을 수 있습니다. https://google.github.io/styleguide/javascriptguide.xml#Semicolons – baao

1

일반적으로 예를 들어 어떤 문제가 발생할하지 않습니다 자바 스크립트에서 세미콜론을 삭제 당신이 게시 한 ....하지만 울퉁불퉁 한 가장자리의 경우 몇 다음과 같은있다 :

function addAToB(a, b) { 
    return 
     a + b 
} 

로 평가됩니다
function addAToB(a, b) { 
    return; 
     a + b; 
} 

addAToB (x, y)는 항상 undefined으로 평가됩니다.

그래서 정당성을 위해 게시 한 경우에도 세미콜론을 포함합니다. 어떤 좋은 minifier도 생산 코드에서 안전하게 할 수있는 세미콜론을 버릴 것입니다.