JS - 코드 간단하게 처리하기

이호현·2020년 12월 5일
0

JS

목록 보기
8/14

1. if문 대체하기

const a = 1234;
if(a !== 0){
  console.log(a);			// 1234
}

if문을 &&로 대체해서 사용할 수 있다.

const a = 1234;
a === 0 && console.log(a)		// 1234
false && 처리할 내용			
// 오른쪽 값과 상관없이 false

true && 처리할 내용			
// 왼쪽 값만으로 결과를 알 수 없어 오른쪽 내용 실행

true || 처리할 내용
// 오른쪽 값과 상관없이 true

false || 처리할 내용
// 왼쪽 값만으로 결과를 알 수 없어 오른쪽 내용 실행




2. 소수를 정수로 변환하기

기본적으로 Math.ceil(), Math.floor(), Math.round(), parseInt()와 같이 정수로 변환하는 방법이 대표적이다.
아래와 같이 간단하게 소수를 정수로 변환할 수도 있다.

const a = 12.3456;
console.log(a|0);			// 12

부동소수점 오른쪽에 |0을 사용하면 |연산자가 좌우의 값을 자동으로 정수로 변환하여 비트or연산을 하기 때문이다. 그래서 오른쪽의 값이 0이기 때문에 왼쪽항의 비트가 그대로 출력된다.

또 다른 방법이 있다.

const a = 12.3456;
console.log(~~a);			// 12

위 코드는 ~연산자가 정수를 비트반전 시키는 원리이다. ~를 두 번 사용하면 반전을 두 번 하기 때문에 정수 형태로 원래 부호값을 얻을 수 있다.





3. 빈 문자열 수치화

빈 문자열 "", ''을 수치화하면 0으로 나타낼 수 있다.

let i = '';
console.log(++i);			// 1

i = '';
console.log(i++);			// 0

i = '';
console.log(+i);			// 0

i = '';
console.log(i);				// 공백 출력




4. length가 1인 배열

요소의 수가 하나인 배열, 즉 length가 1인 배열은 배열 이름만으로 해당 배열내 요소 값에 접근할 수 있다.

let arr = [1];
console.log(++arr);			// 2

arr = [1];
console.log(arr++);			// 1

arr = [1];
console.log(+arr);			// 1

arr = [1];
console.log(arr);			// [1]

배열에 요소가 없는 경우도 배열 이름으로 접근이 가능하다

let arr = [];
console.log(++arr);			// 1

arr = [];
console.log(arr++);			// 0

arr = [];
console.log(+arr);			// 0

arr = [];
console.log(arr);			// []




profile
평생 개발자로 살고싶습니다

0개의 댓글