![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/vBdcp/btranF7sfzL/L4pxzMWPL6kqPMvd8C7sJ1/img.png)
https://www.youtube.com/watch?v=9Y-smeNBoUA 위의 영상을 정리한 포스팅입니다. 1-1. cannot read property X of undefined undefined의 'b'라는 속성을 읽을 수 없다. a.b a가 undefined a가 undefined인 이유를 찾아서 해결 때로는 undefined가 아닌 경우가 있기 때문에 if (a) { a.b = } 와 같이 a가 undefined가 아닐때에만 동작이 실행될 수 있도록 처리 (에러가 나지 않도록) 최신 문법 옵셔널 체이닝 c = a.b; a가 undefined면 똑같이 에러가 난다. (cannot read property b of undefined) c = a?.b; 에러 나지 않고 undefined 처리를 해..
화살표 함수로 변경하기 함수 표현식을 사용해 만든 아래 함수를 화살표 함수로 바꿔보세요 function ask(question, yes, no) { if (confirm(question)) yes() else no(); } ask ( "동의하십니까?" function () {alert("동의하셨습니다");}, function () {alert("취소 버튼을 누르셨습니다.");} ) ;function ask(question, yes, no) { if (confirm(question)) yes() else no(); } ask( "동의하십니까?", ()=> alert("동의하셨습니다."), ()=> alert("취소 버튼을 누르셨습니다.") ); 참고사이트 https://ko.javascript.info/a..
화살표 함수는 함수표현식과 같은 방법으로 사용할 수 있다. let age = prompt("나이를 알려주세요.", 18); let welcome = (age alert ('안녕') : () => alert ('안녕하세요!'); welcome(); 문법이 눈에 익기 시작하면 가독성이 올라간다. 함수 본문이 한 줄인 간단한 함수는 화살표 함수를 사용해서 만드는 게 편리 본문이 여러 줄인 화살표 함수 => 왼쪽에 있는 인수를 이용해 => 오른쪽에 있는 표현식을 평가하는 함수 외에 평가해야 할 표현식이나 구문이 여러 개인 함수 이 경우 역시 화살표 함수 문법을 사용해 함수를 만들 수 있다. 중괄호 안에 평가해야 할 코드를 넣어주어야 한다. return 지시자를 이용해 명시적으로 결과..
화살표 함수 (arrow function) let func = (arg1, arg2, ...argN) => expression arg1, arg2, ...argN을 인자로 받는 함수 func를 생성 함수 func는 => 오른쪽의 expression(표현식)을 평가하고, 평가 결과를 반환한다. 아래 함수와 같은 표현이다 let func = function(arg1, arg2, ...argN( { return expression; } let sum = function(a,b) { return a+b; }; let sum = (a, b) => a+b; alert(sum(1,2)); // 3 인수가 하나밖에 없다면 인수를 감싸는 괄호를 생략할 수 있다. let double = n => n*2; alert (do..
사용자와 상호작용하는 대화상자 alert prompt confirm alert() 메세지를 띄우고 사용자가 확인버튼을 누르기 전까지는 계속 메세지가 떠있음 (알리는 용도) prompt 사용자에게 어떤 값을 입력받을 필드를 띄운다. const name = prompt ("이름을 입력하세요."); alert("환영합니다, "+ name + "님");입력창이 뜨고, 이름을 입력하면 alert으로 환영메세지 백틱으로 작성 const name = prompt ("이름을 입력하세요."); alert(`환영합니다, ${name}님`); 입력창이 떴는데 취소를 누르는 경우 null 값이 들어감 null은 아무 내용이 없다. default 값을 입력하여 null이 아니도록 할 수 있음 prompt는 default값을 입..
const name = "Mike"; const message = `My name is ${name}`; 백틱이 아닌 일반 따옴표를 사용하면 변수명이 그대로 노출된다. const message2 = "My name is ${name}";//"My name is ${name}" console.log(message2); const name = "Mike"; const a = "나는 "; const b = " 입니다."; 숫자형 외에 문자형도 더하기를 사용할 수 있다. console.log(a+ name + b); // 나는 Mike 입니다 숫자형과 문자형을 섞어서 더할 수도 있다. 👉이런 경우에는 문자형으로 변경된다. const age = 30; //number; console.log(a+age+"살"+b)..
변수의 자료형을 알아 낼 때 사용 const name = "Mike"; console.log(typeof 3); // "number" console.log(typeof name); // "Mike"가 되므로 👉"string" console.log(typeof true); //"boolean" console.log(typeof "xxx"); //"string" console.log(typeof null); // "object" console.log(typeof undefined); // "undefined" 변수를 사용하는 개발자가 직접 작성하였다면 typeof 연산자를 거의 사용할 일이 없다. 사용하는 경우 - 다른 개발자가 작성한 변수의 타입을 알아야 할 경우 - api 통신 등을 통해 받아온 데이터를..
const age = 30; // 숫자형 Number const PI = 3.14; //소수점 표현도 가능 사칙연산이 가능한 숫자형 console.log(1 + 2); // 더하기 console.log(10 - 3); .// 빼기 console.log(3 * 2); // 곱하기 console.log(6 / 3); // 나누기 console.log(6 % 4); // 나머지 👉2가 반환된다. const x 1 = 1/0 // 1을 0으로 나눈다면 어떻게 될까? 👉 Infinity, 무한대를 얻는다. 문자열을 숫자로 나눈다면 const name = "Mike"; const y = name/2; 👉 Nan Not a number, 숫자가 아니다. 항상 Nan이 아닌지 염두에 두고 작업해야 한다.