항해일지
[항해99] JS 기초 Chapter5 확인 문제 풀기 (객체) 본문
5가지 키워드로 정리하는 핵심 포인트
- 요소란 배열 내부에 있는 값을 말합니다.
- 속성은 객체 내부에 있는 값을 의미합니다.
- 메소드는 속성 중에 함수 자료형인 것을 의미합니다.
- this 키워드는 객체 내부의 메소드에 객체 자신을 나타내는 키워드입니다.
- 객체 생성 이후에 속성을 추가하거나 제거하는 것을 동적 속성 추가, 동적 속성 제거라고 합니다.
1. 다음과 같은 대상을 자바스크립트 객체로 선언해주세요. 자료형은 알맞다고 생각하는 것(문자열, 숫자, 불 등)으로 지정해주세요.
const test = {
name : '혼자 공부하는 파이썬',
price : 18000,
publisher : '한빛 미디어'
}
console.log(test)
2. 다음 중 객체에 동적으로 속성을 추가하는 문법을 고르세요.
- add 객체[속성] = 값
- 객체.add('속성',값)
- 객체[속성] = 값
- 객체[속성] add 값
3. 다음 중 객체에 동적으로 속성을 제거하는 문법을 고르세요.
- delete 객체[속성]
- 객체.delete('속성')
- delete 객체 from 속성
- delete 속성 from 객체
4. 다음 코드에서 메소드라고 부를 수 있는 속성에 동그라미 표시하세요. 그리고 코드의 실행 결과를 예측해 보세요.
const object = {
ko : '빵',
en : 'bread',
ja : '일본말',
fr : 'pain',
es : 'pan',
lang : {
ko : '한국어',
en : '영어',
ja : '일본어',
fr : '프랑스어',
es : '스페인어'
},
print: function(a){
console.log(`${this.ko}는 ${this.lang[a]}로 ${this[a]}입니다.`)
}
}
object.print('es') //.print가 메소드
4가지 키워드로 정리하는 핵심 포이트
- 실제가 있는 것 중에서 객체가 아닌 것을 기본 자료형이라고 하며, 숫자, 문자열, 불이 대표적인 예입니다.
- 객체를 기반으로 하는 자료형을 객체 자료형이라고 하며, new 키워드를 활용해서 생성합니다.
- 기본 자료형의 승급이란 기본 자료형이 일시적으로 객체 자료형으로 변화하는 것을 의미합니다.
- prototype 객체란 객체의 틀을 의미하며, 이곳에 속성과 메소드를 추가하면 해당 객체 전체에서 사용할 수 있습니다.
1. 다음 코드의 실행 결과를 예측해보세요. 예측과 다른 결과가 나온다면 왜 그런지 생각해보세요.
const num = 52000
num.원 = function () {
return this.valueOf() + '원'
}
console.log(num.원())
에러코드 : TypeError: num.원 is not a function
2. 다음 코드의 실행 결과를 예측해보세요.
function printLang(code){
return printLang._lang[code]
}
printLang._lang = {
ko : '한국어',
en : '영어',
ja : '일본어',
fr : '프랑스어',
es : '스페인어'
}
console.log('printLang(ko) : ', printLang('ko'))
console.log('printLang(en) : ', printLang('en'))
3. 모질라 문서에서 Math 객체와 관련된 내용을 읽고 사인 90도의 값을 구해보세요. 참고로 사인 90도는 1입니다. 아주 단순하게 생각해서 구현하면 0.89라는 결과가 나옵니다. 0.89가 나왔다면 왜 그런지, 그리고 이를 어떻게 해야 제대로 사용할 수 있는지 구글 검색 등을 활용해서 알아보고 코드를 수정하세요.
const degree = 90
// sin 90 = 1
console.log(Math.sin(90))
4. 다음 중 어떤 종류의 객체들이 모두 공유하는 속성과 메소드를 추가할 때 사용하는 객체의 이름을 골라주세요.
- classProp
- Prototype
- sample
- frame
5. 본문에서 Lodash 라이브러리의 _.sortBy 메소드를 살펴 보았습니다. _.orderBy() 메소드도 한번 살펴보고 어떤 형태로 사용해야 하는지 직접 예제를 작성해 보세요. 그리고 다음 과 가티은 배열을 이름(name)으로 오름차순 정렬해주세요.
src = Lodash 라이브러리 3/11 까지 업데이트 예정
const books =[{
name : '혼자 공부하는 파이썬',
price : '18000',
publisher: '한빛 미디어'
},{
name : 'HTML5 웹프로그래밍 입문',
price : '12000',
publisher: '한빛 미디어'
},{
name : '머신러닝 딥러닝 실전 개발 입뮨',
price : '11000',
publisher: '한빛 미디어'
},{
name : '딥러닝을 위한 수학',
price : '13000',
publisher: '한빛 미디어'
}]
const output = _.orderBy(books, ["price"], ["name"])
console.log(JSON.stringify(output))
'항해99 > 온보딩 스터디 문제풀이' 카테고리의 다른 글
[항해99] JS 기초 Chapter5 확인 문제 풀기 (객체 고급) (0) | 2023.03.11 |
---|---|
[항해99] JS 기초 Chapter4 확인 문제 풀기 (함수) (0) | 2023.03.09 |
[항해99] JS 기초 Chapter4 확인 문제 풀기 (반복문) (0) | 2023.03.08 |
[항해99] JS 기초 Chapter4 확인 문제 풀기 (배열) (0) | 2023.03.08 |
[항해99] JS 기초 Chapter3 확인 문제 풀기 (조건문 swich) (1) | 2023.03.07 |
Comments