Javascript

    자바스크립트 함수 호이스팅에 대하여 (함수표현식, 함수선언문)

    자바스크립트의 함수는 양자역학의 중첩 상태이다. 관찰하는 순간 결정되는 것이다. 변수가 될 수도, 매개변수가 될 수도, 리턴값이 될 수도 있는 것이여... 0. 초능력자 자바스크립트 함수 자바스크립트에서 함수는 일급 객체(First Class Object)라고 불린다. 일급 객체는 다른 어떤 객체와도 같이 제한 조건이 없이 사용된다는 의미이다. 크게 3가지가 인터넷에 예시가 많은데, 간단한 함수 하나를 만들어서 설명해보자. doubleNumber라는 함수를 선언한다. 기능은 정말 간단하다. 하나의 숫자를 받으면 2배를 해서 리턴해준다. let doubleNumber = ( number ) => ( number * 2 ); // 화살표 함수 표현식 let doubleNumber2 = function(num..

    const 선언 / Object.seal() / Object.freeze()

    1. 그들이 건들지 못하게 하라 나는 안드로이드 개발할 때도 약간 변태 같은 습성이 있었는데 바로 사람들이 구성한 라이브러리의 내부를 일일이 뜯어보는 것이었다. 라이브러리나 프레임워크나 결국 다른 언어로 만들어진 덩어리일 뿐이기에 항상 나는 추상화된 코드 밑에 어떤 마법들이 일어나고 있는지 파악하고 싶었다. 프론트엔드를 공부하고 있는 지금은 React 라이브러리에 큰 관심이 있는데 톺아볼 요량으로 패스트캠퍼스의 React 라이브러리의 초기 버전을 구현하는 수업을 들었다. (https://fastcampus.co.kr/dev_academy_kmt2) 이 강의 뿐만 아니라 유튜브(https://youtu.be/Z7ysKNFrMqo)에서 보고 배운 것이 있는데 바로 Object.seal()과 Object.fr..

    자바스크립트(Javascript)를 더 깊게, 심화해서 알고 싶은 사람에게 권하는 아티클 5개

    자바스크립트 고수로 향하는 아티클 5개 자바스크립트를 깊게 공부하고 싶은 분께 몇 개의 아티클을 제공해 드립니다. 1. 고급 자바스크립트 배우기 by John Resig jQuery를 창시한 개발자가 직접 만든 자바스크립트 교육자료입니다. 존 레식 본인의 책인 [자바스크립트 닌자 비급]이라는 책에서 다루는 내용인데, 웹으로 올려놓은 것입니다. https://johnresig.com/apps/learn/ Learning Advanced JavaScript johnresig.com 2. 책 요약본 JSON 포맷을 널리 알린 더글러스 크락포드의 책입니다. 정확히 다 알 수는 없지만 대략적인 요약본이니 읽어보고 궁금하면 전문을 사서 읽어보는 것도 좋을지도? https://www.rinae.dev/posts/ho..

    Photopea는 어떻게 Javascript로 고성능을 낼까?

    1. 코드 스타일을 정하자 프로그래밍을 하다보면 자신만의 스타일을 정해야할 때가 있습니다. 특히 성능을 위해서는 일관적인 아키텍처를 따르는 것이 좋죠. 웹에서 사진을 편집하는 포토피아는 어떻게 자바스크립트로 그렇게 고성능을 낼 수 있을까요? 먼저 자바스크립트를 하려면 자바스크립트를 알아야하겠죠. 포토피아는 https://www.w3schools.com/js/ 에서 배우라고 조언합니다. JavaScript Tutorial W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Pyt..

    성공하기 위한 단 하나의 프로그래밍 언어 "Javascript"

    0. 1인 개발자의 시대 뱀파이어 서바이벌(게임), 커피 한 잔(소개팅 앱), 포토피아(Photoshop 대체)의 공통점이 있다. 바로 프로그램을 '혼자서' 개발했다는 것. 앞에 언급한 것들 말고도 1인 개발자로서 성공한 굵직한 프로그램들은 수도 없이 많다. 혼자서 무언가를 개발한다는 것은 외롭고 힘든 일이지만 다른 사람들을 위한 아키텍처를 설계할 필요가 없고 제품 방향도 내가 원하는 대로 설정할 수 있으며 수익을 독식할 수 있다는 장점이 있다. 혼자서 프로그램으로 창업한다면 어떻게 돈을 벌 수 있을까? 어떤 제품을 만들어야 성공할 수 있을지는 약한 기획력을 가진 내가 이야기할 수는 없고, 대신 몇 개의 주변 사례를 모아서 적어보려고 한다. 1. 웹은 죽지 않는다. 내가 하고 싶은 이야기는 이다. 뱀파이..

    자바스크립트를 위한 클린코드 작성-1

    프로토타입 기반 언어, NaN이 NaN이 아닌 언어, 함수를 표현하는 데에만 4가지 표현식이 있는 언어, 여튼 간에 쫌 이상한 구석이 있는 언어인 Javascript. Node.js를 통해 로컬에서 돌릴 수도 있고, 웹 브라우저를 통해 Web API를 이용할 수 있으며, Electron, Flutter, React Native 등 다양한 플랫폼을 위한 프로그램을 만들 수도 있는 언어이다. 생각보다 매우 다양한 곳에서 쓰이며, 프론트엔드/백엔드의 풀스택 언어로도 가장 많이 쓰이는 언어이다. 오늘부터 클린코드 작성을 위해서 여러 자료를 모아서 작성하려고 한다. 책 / 인터넷 강의 / 유튜브 등 여기저기서 모아온 지식들을 공유한다. 1. 변수 선언시 var 선언을 되도록 사용하지 말자. 프로그래밍 언어를 배울..