배열
1. object, array 자료형을 이용해서 3개의 상품이 들어가있는 배열(array)를 만들어보세요.
- Answer
var cafe =[아메리카노,프라푸치노,라떼]
var cafe=[{
name:'아메리카노',
price:5000
},{
name:'프라푸치노',
price:6000,
},{
name:'라떼',
price:6500
}]
2. 1번에서 만든 변수에서 2번째 상품의 name 값을 추출해 보세요.
- Answer
console.log(cafe[1].name)
조건문
1. products의 갯수가 1개 이상일 때와 아닐 때를 나누는 조건문을 짜보세요.
var products = [{
name: '농구공',
description: '농구 황제 마이클 조던이 사용한 농구공입니다',
price: 100000,
}, {
name: '축구공',
description: '축구 황제 메시가 사용한 축구공입니다',
price: 50000
}]
- Answer
var length = products.length
if (products.length>=1){
console.log('more than 1')
else {console.log('else')}
2. products의 갯수가 5개 이상일 때, 1~4개 사이일 때, 0개일 때 조건문을 짜보세요.
- Answer
var length = products.length
if (products.length>=5){
console.log('more than 5')}
else if (products.length>=1){
console.log('1~4')}
else {console.log('0')}
함수
---
var products = [{
name: '농구공',
description: '농구 황제 마이클 조던이 사용한 농구공입니다',
price: 100000,
seller: '민수'
}, {
name: '축구공',
description: '축구 황제 메시가 사용한 축구공입니다',
price: 50000,
seller: '철수'
}]
1. 인자로 배열을 받았을 때 길이를 return 하는 함수를 만드시오. 그리고 products를 넣어 실행해보세요.
- Answer
function check(x)={
var length = products.length
return length;
}
2. product 객체를 넣었을 때 product의 seller를 반환하는 함수를 만들어 보세요. 그리고 products의 첫번째 값을 넣어 실행해보세요.
- Answer
function check(product){
return product.seller
3. products 배열을 넣었을 때, 그 안에 가격(price)를 순서대로 출력(console.log)하는 함수를 만들어보세요.
- Answer
function check(x){
var length=products.length
for {var i=0; i<products.length; i++}
return products[i].price;
javascript
**조건문, 반복문, 함수포함**
var allProducts = [{
name: '농구공',
description: '농구 황제 마이클 조던이 사용한 농구공입니다',
price: 100000,
}, {
name: '축구공',
description: '축구 황제 메시가 사용한 축구공입니다',
price: 50000
}, {
name: '야구공',
description: '박찬호가 던졌던 야구공입니다.',
price: 75000
}]
products 배열을 넣었을 때, 가격이 60000원 이상인 product 객체를 담은 배열을 반환하는 함수를 만들어라.
- Answer
var length = products.length
for(var i =0; i<products.length; i++)
if(products[i].price>=60000){
return products[i]
다시 풀어보기!!
*실행시켰을 때 자꾸 오류가 나서..도저히 모르겠어서 풀이를 찾아보았다.
- 정답 풀이
function getExpensiveProducts(products){
var newProducts = [];
for(var i = 0; i < products.length ;i++){
var product = products[i];
var price = product.price;
if(price >= 60000){
newProducts.push(product)
}
}
return newProducts;
}
const expensiveProducts = getExpensiveProducts(allProducts);
console.log(expensiveProducts);
- 조건문으로 해당 배열의 길이만큼 반복해 모든 배열을 호출하는 것은 맞았다.
- 각 배열의 각 객체를 새 변수에 각각 저장 후, 새로운 객체에 넣는다.