콜백함수 함수를 전달해서 두 가지의 함수(printYes, printNo)가 if 상황이 맞으면 전달된 함수를 호출한다. 간단히 정의하면 다른 함수에 입력값으로 전달되서 다른 함수에 의해서 호출된다는 것이다. 예제) 정답이면 yes! 정답이 아니면 no! 반환 function quiz(answer, printYes, printNo) { if (answer === 'like it') { printYes(); } else { printNo(); } } const printYes = function() { console.log('yes!'); }; const printNo = function() { console.log('no!'); }; quiz('hate it', printYes, printNo); //n..
for문을 이용해서 배열의 형태로 변환할 수 있다. 1. ...(rest parameters) function printAll(...args) { for (let i = 0; i < args.length; i++) { console.log(args[i]); } } printAll('apple', 'banana', 'mango') /* apple banana mango */ 2. for of function printAll(...args) { for (const arg of args) { console.log(arg); } } printAll('apple', 'banana', 'mango') args 모든 값들이 하나씩 차례로 지정되면서 arg를 출력 3. forEach function printAll(...
2023.07.04 - [💻/JS] - [Javascript] 연산자 종류와 if 조건문 [Javascript] 연산자 종류와 if 조건문 if 조건문에 비교 연산자를 사용할 수 있다. 연산자 종류 종류 기호 문법 의미 비교 연산자 == A==B A와 B가 같은가? != A!=B A와 B가 다른가? === A===B A와 B가 일치하는가? !== A!==B A와 B가 일치하지 않는 built.tistory.com 연산자의 종류는 이전글을 참고해주세요 논리 연산(logical operators) 사용시 주의할 점을 정리합니다. || (or) const value1 = false; const value2 = 4 < 2; function check() { for (let i = 0; i < 3; i++) { ..
for in - 객체의 속성들을 반복적으로 열거하는데 사용한다. - 주로 특정 값을 가진 키를 구현할 때 사용한다. - 배열이 아닌 객체의 반복문이므로 일관된 순서로 요소를 방문하지 않을 수 있으니 순서가 중요한 반복문을 구현할 경우 for...of나 forEach()문을 권장한다. for in의 구문 for (const 변수 in 반복할 객체) { 실행문 } - 변수는 반복할 때마다 다른 이름을 지정한다. - 객체는 열거형 속성을 가진 반복을 수행할 객체를 지정한다. ex const obj = {a: 1, b: 2, c: 3} for (const i in obj) { console.log(i + ':' + obj[i]); } /* a:1 b:2 c:3 */ ex. 학점 계산하기 const getExam..
scope : 변수에 접근할 수 있는 범위 block : 0개 이상의 구문을 묶을 때 사용하는 한 쌍의 중괄호 global scope : 전역 범위 global variable : 외부에 선언되어도 내부 접근이 가능한 전역 범위에서 선언된 변수(과도하게 사용하면 코드 복잡성과 예상치 못한 결과를 초래할 가능성 높음) block scope : 주어진 코드 블록{} 안에서만 사용 가능한 범위 local variable : function 내에 선언되는 변수 global namespace : 전역 범위에서 이름 공간을 선언하여 구분이 가능하도록 정해놓은 영역 scope pollution : 수가 의도하지 않은 범위에서 접근 가능하거나 사용되는 현상
Math() 는 수학적인 연산을 수행하는 상수와 함수를 포함하는 내장 객체입니다. 자주 사용하는 메서드 위주로 예시와 함께 확인해봅시다. round 는 반올림 메서드입니다. console.log(Math.round(3.5)); //4 console.log(Math.round(3.49)); //3 console.log(Math.round(2)); //2 console.log(Math.round(0.82)); //1 ceil 은 올림 메서드입니다. console.log(Math.ceil(1)); //1 console.log(Math.ceil(1.1)); //2 console.log(Math.ceil(2.01)); //3 console.log(Math.ceil(3.5)); //4 floor은 내림 메서드입니다..
DOM이란| 자바스크립트를 통해 웹페이지(문서)를 동적으로 제어해주는 인터페이스를 말한다. 약자를 풀어서 해석해보면 Document : 웹페이지를 구성하는 요소들(Element : body,div, ···) Object : 객체 Model : 모델 문서들을 객체로 만들어서 자바스크립트가 제어하도록 하는 장치를 DOM이라 한다. 브라우저는 HTML 코드를 해석하고 → 요소들을 트리 형태로 만든 문서(DOM)를 → 화면에 보여준다.(렌더링) DOM의 목적| 웹 페이지에 접근하여 페이지를 수정하고 이벤트 처리를 정의할 수 있다. DOM 접근 메소드| 메소드를 사용해 제어할 요소를 찾을 수 있다. 메소드 & 속성 설명 document.getElementById() 특정 id를 가진 요소를 선택한다. docume..
요소가 숫자인 문자열을 배열로 반환한 후 max값을 구해봅시다. 처음 작성한 코드 const numbers = "10 11 5 6 12 7 3 9" const arrNum = [...numbers]; const maxNum = Math.max(...numbers); console.log (arrNum) //9 max값이 12가 아닌 9가 반환된 이유는 컴퓨터는 문자열에 담긴 numbers가 숫자인지 모르니 ['10', '11', '5', ···] 가 아닌 ['1', '0', ' ', '1', '1', ' ', '5', ' ', '6', ' ', '1', ' ','2', ' ', '7', ' ', '3', ' ', '9'] 이런식으로 띄어쓰기를 포함한 각 요소들을 배열로 변환되었기 때문입니다. 이를 해결하..
Allow function | 화살표함수는 함수를 간결하게 만들어줍니다. function 키워드와 중괄호를 생략하고 =>로 대신합니다. 아래 두 코드는 같은 의미입니다. const add = function (a, b) { return a + b; }; const add = (a, b) => a + b; map() 메서드란 | 배열의 각 요소에 지정된 함수를 호출한 결과를 새로운 배열로 반환하는 메서드입니다. ex. 화살표 함수로 arr배열의 각 숫자를 곱한 값을 반환 const arr = [1, 2, 3, 4]; const squares = arr.map(num => num * num); console.log (squares) //[1, 4, 9, 16] '=>'는 화살표 함수(arrow functio..
객체지향 프로그래밍이란| 각 객체들을 조합해서 프로그램을 만드는 방법이다. 예를 들어 차 클래스라는 틀에 공통적인 특성의 객체들을 묶을 수 있다. Class = 차(car) Object = Benz, Audi, Tesla 객체지향 프로그래밍의 장점 1. 프로그램 설계가 유연하다. 2. 추가 및 수정이 쉬워 유지 보수가 편하다. 3. 큰 규모의 객체나 비슷한 모양의 객체를 계속 찍어내야 할 때 용이하다. 객체지향 프로그래밍의 단점 1. 설계부터 해야하니 개발속도가 느리다. 2. 객체수가 많아지면 실행속도가 느리다. 3. 메모리양이 증가함에 따라 비용이 커진다. Javascript 사용으로 Class에 객체지향을 반영한 코드 class MyMath { constructor(a, b) { this.number..
- Total
- Today
- Yesterday