자바스크립트99 19. 화살표 함수 (Arrow Functions) 안녕하세요. 박기린입니다. 오늘은 저번 함수 설명글에 이어서 화살표 함수에 대해 알아보겠습니다. (JS의 함수에 대해 처음 접하시는 분이면, 이전 글을 꼭 보고 오시는 것을 추천드립니다.) Arrow Functions 화살표 함수는 Function Expression의 special한 형태입니다. 화살표 함수는 세 가지 유형가 있습니다. 1. 한 줄 함수일 경우 const calcAge3 = birthYear => 2022 - birthYear; '인자(parameter) => return할 expression'의 형태입니다. 이때는 '(),{}'와 같은 괄호들을 쓰지 않는 대신에 return 키워드를 쓰지 않습니다. 2. 여러 줄의 코드를 필요로 하는 경우 const yearsUntilRetiremen.. 2022. 10. 13. 18. 함수 (Functions) 안녕하세요. 박기린입니다. 지금부터 자바스크립트의 함수에 대해 알아보겠습니다. Function JS의 함수 호출 키워드는 'function'입니다. '함수를 불러온다'라는 표현으로 'calling' or 'running' or 'invoking' + 'functions'라는 단어를 사용합니다. function logger() { console.log('My name is yosep'); } logger(); function fruitProcessor(apples, oranges) { const juice = `Juice with ${apple} apples and ${oranges} oranges.`; return juice; } const appleJuice = fruitProcessor(5, 0); .. 2022. 10. 11. 17. Strict 모드 안녕하세요 박기린입니다. JS는 높은 유연성을 가지고 있습니다. 대표적으로 type coercion이 일어난다는 점이 있죠. 하지만 유연함이 독이 될 수 있습니다. 유연한 대처를 원하지 않는 상황에서도 JS엔진이 개발자의 마음을 몰라주고 유연하게 대처해버려서 생각치도 못한 버그를 만날 수 있기 때문입니다. 다행히 이러한 상황일 방지해주는 모드가 있습니다. 바로 strict 모드입니다. Strict 모드 Strict(엄격한) 모드는 높은 안전성을 가진 코드를 만들기 위해서 존재합니다. 1. 특정 행동을 금지합니다. 2. JS엔진이 쉽게 지나칠 수 있는 오류가 발생하는 상황에서, 눈에 보이는 Error 문구를 개발자에게 강조해서 보여줍니다. Strict 모드 사용하는 방법 'use strict' 이 코드를 .. 2022. 10. 7. 16. JavaScript Releases: ES5, ES6+ 그리고 미래의 JavaScript 안녕하세요 박기린입니다. 자바스크립트는 꽤 긴 역사를 가지고 있는 프로그래밍 언어입니다. 그리고 현재까지 계속 버전 업을 하면서 현재도 대중적으로 사용되고 있습니다. 자바스크립트의 역사 1995년 - Brendan Eich는 10일만에 자바스크립트 초기 버전을 만듭니다. 당시에는 Mocha라는 이름을 가지고 있었습니다. 초기버전임에도 불구하고 현대 자바스크립트의 기반 기능을 이루고 있습니다. 1996년 - Mocha에서 LiveScript라는 이름으로 바꾼 다음, JavaScript로 다시 이름을 짓습니다. 왜냐하면 Java 개발자들을 끌어들이기 위해서였는데요. 하지만 JavaScript는 Java와 완전 다른 언어입니다. 1997년 - JavaScript를 표준화하는 ECMA가 출범하게 됩니다. 동시에.. 2022. 10. 6. NodeJS/macOS - n 패키지 installed, active 경로가 달라 node 버전 변경이 안될 때 (Homebrew 문제) 보호되어 있는 글 입니다. 2022. 10. 6. 13. Switch 문 안녕하세요 박기린입니다. Switch Statement Switch문은 해당 데이터가 어떤 case에 부합하는지에 따라, 그 구문의 ':' 이후에 나오는 코드를 실행합니다. 조건문의 일종으로 if문의 대용으로 사용할 수 있습니다. const day = 'monday'; switch(day) { case 'monday': // day === 'monday' console.log('Plan course structure'); console.log('Go to coding meetup'); break; case 'tuesday': console.log('Prepare theory videos'); break; case 'wednesday': case 'thursday': console.log('Write co.. 2022. 10. 3. 11. 동등 연산자(==) vs 일치 연산자(===) 안녕하세요. 박기린 입니다. 자바스크립트는 비교 연산자에서 '같다'의 표현이 두 가지가 있다는 사실을 지난 글에서 확인했습니다. 이에 대해 좀 더 집중적으로 공부해보겠습니다. == vs === '=='는 '느슨하게 같다, 동등하다'의 의미를 지닌 연산자입니다. JS 엔진 내에서 자체적으로 피연산자의 데이터 타입을 coercion 한 뒤에 비교를 합니다. 즉, 타입이 달라도 내용물이 같으면 true를 return 합니다. '==='는 '엄격하게 같다, 일치하다'의 의미를 지닌 연산자입니다. 다른 프로그래밍 언어에서 쓰이는 '=='연산자와 동일한 역할을 한다고 보시면 됩니다. '=='와는 다르게 데이터 타입까지 완전히 동일해야 true를 return 합니다. 18 === 18 // true 18 == 18 .. 2022. 9. 30. 10. Truthy and Falsy Falsy Value란 Falsy value는 JS엔진에서 Boolean 타입으로 변환되었을 때 false 값을 반환하는 걸 의미한다. Falsy Value의 종류 Falsy Value는 크게 여섯 가지로 구분된다. undefined, null, NaN, 0, "" (빈 String), false 이 있다. 예시 console.log(Boolean(0)); // false console.log(Boolean(undefined)); // false console.log(Boolean('joseph')); // true console.log(Boolean({})); // true - empty object도 true로 변환된다. console.log(Boolean('')); // false const mon.. 2022. 9. 29. 9. 타입 변환의 종류 (Type Conversion, Coercion, Casting) 안녕하세요. 박기린 입니다. 이전 글에서 JS의 데이터 타입 종류에 대해 알아보았습니다. (해당 글 주소: https://arnopark.tistory.com/470) 내용 중에 '자바스크립트는 동적 타입을 지원'한다고 했었습니다. 이처럼 자바스크립트 내부에서 변수의 타입을 정해주다보니, 어쩔 때는 원래 String이었던 데이터가 갑자기 Number가 되거나 그 반대가 되는 상황이 발생합니다. 지금부터 어떠한 경우에 타입 변환이 발생하는 지 알아보겠습니다. JS 타입변환의 종류 JS는 다양한 타입변환 유형이 존재합니다. 크게 explicit과 implicit 두 가지로 나뉩니다. explicit [explicit type coercion, type conversion, type casting, 명시적 타.. 2022. 9. 28. 이전 1 ··· 7 8 9 10 11 다음