inflearn logo
강의

Course

Instructor

Understanding and Practice of Frontend Development Environment (webpack, babel, eslint..)

Why you need webpack and its basic behavior

문득 궁금해서 질문 드립니다.

268

hello

43 asked

1

스코프 관련해서는 항상 당연한듯 IIFE 로 하다가 생각해 보니 일반 코드 블럭으로 해도 되는거 아닌가? 하는 생각이 들어서 질문드립니다.

두 방식 모두 2:45에서 처럼 결과가 콘솔창에 잘 나오고

각 sum 함수만 접근 가능한 num 변수를 선언할 수도 있는데 (스코프 개념) IIFE 를 사용하신 이유가 있나요??

babel nodejs 웹팩 eslint

Answer 2

0

Tree Code

IIFE 앞에

;(function . . .

왜 세미콜론이 붙는지 궁금하네요

0

jeonghwan

자바스크립트 엔진이 코드를 해석할때 세미콜론이 누락된 곳에 추가하는 단계(asi)가 있는데요.

  • https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Lexical_grammar#%EC%9E%90%EB%8F%99_%EC%84%B8%EB%AF%B8%EC%BD%9C%EB%A1%A0_%EC%82%BD%EC%9E%85

어떤 경우에는 세미콜론을 붙일 수 없어서 의도한대로 코드가 실행되지 않을수 있는 경우가 있어요.

foo()

(function() {})()

이런 경우인데요. asi가 한문장으로 여길수 있기 때문에 의도한 코드가 되지 않죠. 그래서 즉시 함수 실행같은경우 앞에 세미콜론을 붙여주기도 합니다.

0

jeonghwan

기존에 함수 스코프를 사용하는 경우 iife 로 스코프를 격리한 것을 말씀드렸어요.

let이나 const 같은 경우는 블로 스코프를 사용하기 때문에 중괄호를 이용해 외부 접근을 막을 수 있는데요. 만약에 var num 로 선언한 변수라면 블록 외부에서 접근할 수 있게 됩니다.

지금 시점에서 해당 강의를 듣는 것에 대하여

1

136

3

2025년 기준 번들러 트렌드와 선택 기준이 궁금합니다 (Webpack, Vite, tsup 등)

1

254

1

에러 해결 공유드립니다

1

236

2

webpack 4 버전과 호환되는 플러그인 버전 공유드립니다

1

254

2

eslint

0

399

3

도와주세요!

0

173

2

[수강 중 트러블슈팅 공유] webpack, webpack-cli 버전

1

156

1

질문 an error occurred while loading the image

1

492

1

webpack에서 babel-loader 사용할때 질문

1

160

1

자주 사용하는 플러그인 에서 질문이 있습니다.

1

174

1

eslint no-extra-semi 관련 질문

1

152

1

webpack5 에서 open index.html하는법 + 질문

1

179

1

TypeError: ((process.env.NODE_ENV === "production") && [MiniCssExtractPlugin]) is not iterable

2

313

1

혹시 웹팩 5 내용으로 강의 업데이트는 안되는건가요?

1

377

1

에러없이 png안뜨시는 분들

1

287

1

Error: Cannot find module 'node:crypto'

1

472

1

DefinePlugin 관련; env와 관련하여, (21.06.22 16:15, aloha_jh) 답변포함

1

422

1

깃허브 확인 문의

0

586

1

폴더를 prettier로 돌렸을 때 나오는 에러 구문에 대한 질문

0

417

1

해쉬값과 캐쉬 갱신

1

470

1

Hash 에러 발생

1

2684

2

webpack.config.js에서의 CommonJS방식에 대한 질문

0

847

3

웹팩 버전

0

533

1

웹팩-cli 버전을 명시하지 않으면 왜 에러가 날까요?

0

497

1