풀면서 이해가 안되거나 많이 틀린 문제들을 오답노트형식으로 작성하였다.
getTotal
함수를 만들어주세요. getTotal
함수는 가격을 2개 받아서 calculateTotal 호출 반환값을 더해서 리턴하는 함수입니다.
getTotal
이라는 이름의 함수를 만들어주세요. 가격정보 2개를 인자로 받습니다.getTotal
함수에서 인자로 받은 가격으로 각각 calculateTotal
함수를 호출해주세요. 그리고 그 결과값을 더해서 반환해주세요.참고사항
getTax
함수는 가격의 tax를 구하는 함수입니다.calculateTotal
함수는 상품의 가격에 tax를 더한 값을 구하는 함수입니다.getTotal
함수는 두 상품의 가격을 더해서 반환하는 함수입니다.function getTax(price) {
return price * 0.1;
}
function calculateTotal(price) {
return price + getTax(price);
}
let result = calculateTotal(3500);
//내답
function getTotal(p1, p2) {
return (p1+calculateTotal(price)) + (p2 +calculateTotal(price));
} //딩연히 오류가 떴다. array에서 묶을때 '()'쓰길래 당연히 함수에서도 될줄 안듯.
console.log (3000, 4000); //왜 함수를 호출하지 않았는지가 의문;;;;;
//모답
//assignment
function getTotal(p1, p2) {
return calculateTotal(p1)+ calculateTotal(p2);
}
getTotal(3000, 4000);
배열의 최대 최소값을 구하려면 1. 함수를 사용하거나 2. for문으로 구현하는 두 가지 방법을 생각할 수 있습니다.
findSmallestElement
의 arr
인자는 숫자 값으로만 이루어진 배열입니다.
arr
의 값들 중 가장 작은 값을 리턴 해주세요.
만일 arr
가 비어있으면 0을 리턴 해주세요.
예를 들어, 다음과 같은 배열이 인자(input)으로 들어왔다면 1이 리턴 되어야 합니다.
[20, 200, 23, 1, 3, 9]
// 내답노답
let arr= [1, 9, 4, 2, 3, 21];
function findSmallestElement(arr) {
for(let i =0; i < arr.length; i++) {
if(arr.length=== 0){
return 0;
} else if(arr[i] <= min){
min = arr[i]
}
} return min;
}
최대값 또는 최소값을 구하기 위해서 Function.prototype.apply()를 사용할 수 있습니다.
var myArray = [-3, -2, 1, 3, 5]
var min = Math.min.apply(null, myArray); //-3
2-2-2. 모답1> 배열 할당 후 최소*최대값 찾기
var myArray = [-10, -1, 0, 1, 10];
for(var i = 0; i < myArray.length; i++) {
// minNum 값이 없는 경우 현재 배열값으로 지정
if (!minNum) {
minNum = myArray[i];
};
// minNum의 값과 현재 값을 비교해서 minNum값을 가장 작은 값으로 유지
if (minNum > myArray[i]) {
minNum = myArray[i];
}
}
console.log(minNum);
출처
https://webisfree.com/2018-01-23/자바스크립트-배열값-중에서-최대값-최소값-찾는-방법
2-2-2. 모답2> 최소값을 변수로 설정 후 임의의 배열 할당
function findSmallestElement(arr){
if(arr.length === 0) {
return 0; //빈 배열이면 0을 리턴
} else {
let min = arr[0];
// 변수 min에 배열의 아무 값을 임의로 설정. (가상의 최솟값)
for (i = 0 ; i < arr.length; i++) {
if (arr[i] < min ) {
min = arr[i];
}
} return min;
}
findSmallestElement([2000000, 30, 5, 7, 200, 1, 0, 9])
//0 리턴 ;