반응형
1. 여러 객체의 메소드들
1) Number 객체
- toFixed() : 숫자 N번째 자리수 까지 출력하기
const n = 123.456789
n.toFixed(2)
=> 123.46
n.toFixed(3)
=> 123.457
n.toFixed(4)
=> 123.4568
- isNaN() : Nan 확인하기
const n = Number('문자')
n
=> NaN
//NaN과의 비교연산자로는 비교할 수 없음
n == NaN
=> false
//isNaN을 사용해야 비교할 수 있음
Number.isNaN(n)
=> true
- isFinite() : infinity 확인하기
const a = 10 / 0
a
=> Infinity
const b = -10 / 0
b
=> -Infinity
Number.isFinite(a)
=> false
Number.isFinite(b)
=> false
// Infinity는 비교연산자로 비교 가능
a == Infinity || b == -Infinity
=> true
2) String 객체
- trim() : 문자열 양쪽 끝의 공백 없애기
stringA = " 안녕하세요 "
stringB = " 공백이 아주 많습니다 "
stringA.trim()
=>"안녕하세요"
stringB.trim()
=>"공백이 아주 많습니다"
- split() : 문자열을 특정 기호로 자르기
stringC = "
사과,바나나,포도,복숭아
국어,수학,영어,과학"
stringC = stringC.split('\n')
=>["사과,바나나,포도,복숭아","국어,수학,영어,과학"]
stringC = stringC.map((line)=>line.split(','))
=>[Array(4),Array(4)]
3) JSON 객체
- 자바스크립트의 객체처럼 자료를 표현하는 방식
- JSON.stringfy() : 자바스크립트 객체를 JSON 문자열로 변환
- JSON.parse() : JSON 문자열을 자바스크립트 객체로 변환
4) Math 객체
- 수학과 관련된 기본적인 연산을 할때 사용하는 객체
- pi,e같은 수학 상수, Math.sin(). Math.cos(), Math.tan(), Math.random() 과 같은 함수들도 있다.
2. 속성 존재 여부 확인
1) 조건문 활용
if (object.속성) {
console.log('속성이 있습니다')
} else {
console.log('속성이 없습니다')
}
2) 짧은 조건문 활용
object.속성 || console.log('속성이 있습니다')}
3) 짧은 조건문 응용
object.속성 = object.속성 || '미정'
3. 다중할당
1) 배열 기반의 다중 할당
[식별자, 식별자, 식별자, ...] = 배열
let arr = [1,2,3,4]
[a,b] = arr
console.log(a,b)
=> 1,2
2) 객체 기반의 다중 할당
{속성이름, 속성 이름} = 객체
{식별자 = 속성이름, 식별자 = 속성 이름} = 객체
const student = {
name : '김철수'
age : 17
grade : '고등학교 1학년'
}
const {name, age} = student
console.log(name,age)
=> 김철수 17
const {a = name, b = grade} = student
console.log(a,b)
=> 김철수 고등학교 1학년
4. 전개 연산자
- 배열과 객체를 할당할때 이름만 다르고 같은 내용을 가르키는 것을 얕은 복사라고 한다.
- 각자 독립된 배열이나 객체를 만들려면 깊은 복사를 해야한다.
- 깊은 복사를 하기 위해서는 전개 연산자가 필요하다.
1) 배열 전개 연산자
[...배열]
const 물건 = ['연필','지우개']
const 물건2 = [...물건]
물건2.push('자')
물건2.push('샤프')
console.log(물건)
=> ['연필','지우개']
console.log(물건2)
=> ['연필','지우개', '자','샤프']
- 전개 연산자를 통해 요소 추가도 가능하다.
[...배열,자료,자료,자료]
const 물건 = ['연필','지우개']
const 물건2 = ['자', ...물건, '샤프']
console.log(물건)
=> ['연필','지우개']
console.log(물건2)
=> ['자', '연필', '지우개', '샤프']
2) 객체 전개 연산자
{...객체}
const 바나나 = {
fruit : '바나나'
price : 4000
}
const 포도 = {...바나나}
포도.fruit = '포도'
포도.price = 5000
console.log(JSON.stringfy(바나나))
=> {'fruit':'바나나','price':4000}
console.log(JSON.stringfy(포도))
=> {'fruit':'포도','price':5000}
- 전개 연산자를 통해 속성 추가도 가능하다.
{...객체,자료,자료,자료}
const 바나나 = {
fruit : '바나나'
price : 4000
}
const 포도 = {
...바나나,
fruit = '포도',
price = 5000
variety = '샤인머스캣'
}
console.log(JSON.stringfy(바나나))
=> {'fruit':'바나나','price':4000}
console.log(JSON.stringfy(포도))
=> {'fruit':'포도','price':5000,'variety':'샤인머스캣'}
반응형
'혼공단 > 혼공단 6기' 카테고리의 다른 글
혼자 공부하는 자바스크립트 7장 - 문서 객체 모델(1) (0) | 2021.08.03 |
---|---|
[혼공단 6기] 혼자 공부하는 자바스크립트 4주차 후기 및 미션 인증 (0) | 2021.07.31 |
혼자 공부하는 자바스크립트 6장 - 객체(1) (0) | 2021.07.31 |
혼자 공부하는 자바스크립트 5장 - 함수 (0) | 2021.07.30 |
[혼공단 6기] 혼자 공부하는 자바스크립트 3주차 후기 및 미션 인증 (0) | 2021.07.22 |