문자열 연결과 템플릿 문자열
- 문자열을 연결하기 위해 사용하는 + 연산자는 가독성이 떨어짐
- ES2015부터 ` (백틱) 사용 가능 (맥북 기준: ₩+option)
- `` 안에 문자열과 ${계산식}을 혼용

함수 선언과 호출, 함수 표현식, 호이스팅

- 호이스팅: (함수/변수 선언을 유효 scope의 최상단으로 이동) 자바스크립트(Javascript)에서 변수와 함수 선언이 그들이 있는 코드에서 상위로 끌어올려진 것처럼 작동하는 특성을 나타내는 용어
- 함수 표현식을 쓰면 해당 함수가 먼저 선언 되었는지 확인 할 수 있다 (권장)
- 함수 선언문에서는 해당 특성이 유효하나 함수 표현식, 화살표 함수에서는 불가능하다.
- let, const는 호이스팅을 허용하지 않는다.
- 예외 케이스: <script type="text/babel">: var도 호이스팅을 허용하지 않는다.
Default parameters
function logActivity(name="임준식", acivity="테니스"){
console.log(`${name}은 ${acivity}를 좋아합니다.`)
}
logActivity()
var defaultPerson = {
name: {
first: "성원",
last: "오"
},
favActivity: "테니스"
}
function logActivity2(p=defaultPerson){
console.log(`${p.name.first}은 ${p.favActivity}를 좋아합니다.`)
}
logActivity2()
<출력 결과>
"임준식은 테니스를 좋아합니다."
"성원은 테니스를 좋아합니다."
화살표 함수
ES6 (ES2015)에서 도입된 새로운 함수 문법으로 화살표 함수는 전통적인 함수 표현 방식에 비해 더 간결하며, 몇 가지 중요한 특성도 가지고 있다.
// 전통적인 함수 표현
const square = function(x) {
return x * x;
};
// 화살표 함수 표현
const squareArrow = x => x * x;
var lordify = firstname => `캔터베리의 ${firstname}`
console.log(lordify("임수한"))
var sum = (op1,op2) => op1+op2
console.log(sum(3,5))
<출력 결과>
"캔터베리의 임수한"
8
'Development > JavaScript' 카테고리의 다른 글
| JavaScript 클래스 문법 (0) | 2023.09.02 |
|---|---|
| JavaScript 바인딩 (0) | 2023.09.02 |
| JavaScript문법 Destructuring 구조분해 할당 (0) | 2023.01.15 |
| JavaScript 스프레드 연산자, 나머지 연산자, === 연산자 (0) | 2023.01.15 |
| JavaScript 클래스 ES6 vs ES7 (0) | 2023.01.15 |