Programming Language/JavaScript8 [JavaScript] 순수함수 / 비순수함수 (함수형 프로그래밍) ※본 포스팅은 개인 학습을 목적으로 작성된 것이므로 정확하지 않은 정보가 포함되어 있을 수 있음을 참고 부탁드립니다. 코드리뷰를 받으면서 언급된 순수함수에 대해서 알아보기로 했다. 🧐 1. 순수함수 우선 깔끔하게 위키를 던져본다. 크게 두 가지로 순수 함수에 대해 정의했다. 1) the function return values are identical for identical arguments (no variation with local static variables, non-local variables, mutable reference arguments or input streams) 👉 들어온 인자가 같을 경우 결과(return)가 항상 같은 함수 2) the function application h.. 2022. 6. 7. 코어 자바스크립트 | 자바스크립트 기본 2 ※본 포스팅은 개인 학습을 목적으로 작성된 것이므로 정확하지 않은 정보가 포함되어 있을 수 있음을 참고 부탁드립니다. 2. 자바스크립트 기본 2 10. if와 '?'를 사용한 조건 처리 - if(...)문은 괄호 안에 들어가는 조건을 평가하며, 그 결과가 true일 경우 코드 블록 실행 - 불린형으로의 변환 if (0) { // 0은 falsy로 해당 코드 블록은 절대 실행되지 않음 ... } if (1) { // 1은 truthy로 해당 코드 블록은 항상 실행됨 ... } - if문에는 else절을 붙일 수 있음. else 뒤에 이어지는 코드 블록은 조건이 거짓일 때 실행 - 조건부 연산자 '?': 물음표 연산자라고도 불리는 조건부 연산자를 사용하면, 짧고 간결한 표현이 가능. 피연산자가 세 개이기 때.. 2022. 4. 17. 코어 자바스크립트 | 자바스크립트 기본 1 ※본 포스팅은 개인 학습을 목적으로 작성된 것이므로 정확하지 않은 정보가 포함되어 있을 수 있음을 참고 부탁드립니다. 2. 자바스크립트 기본 1 1. Hello, world - 'script' 태그 : 와 같이 사용 가능하며 /path/to/script.js 는 절대 경로를 나타냄. 현재 페이지에서의 상대 경로를 사용하는 것도 가능 *스크립트가 길어지면 파일을 분리하여 저장하는 것이 좋음. 스크립트를 별도로 저장하면 브라우저가 스크립트를 다운받아 캐시에 저장하기 때문에 성능상 이점이 있음(브라우저는 페이지가 바뀔 때마다 스크립트를 다운 받지 않고 캐시에서 가져오기 때문) 즉, 트래픽이 절약되고 웹 페이지의 속도 상승 2. 코드 구조 1) 문(statement): 어떤 작업을 수행하는 문법 구조(synt.. 2022. 4. 14. 코어 자바스크립트 | 소개 ※본 포스팅은 개인 학습을 목적으로 작성된 것이므로 정확하지 않은 정보가 포함되어 있을 수 있음을 참고 부탁드립니다. 1. 코어 자바스크립트: 소개 - 자바스크립트의 동작 방식 1) 엔진(브라우저: 내장 엔진)이 스크립트를 읽는다. -> 파싱 2) 읽어 들인 스크립트를 기계어로 전환한다. -> 컴파일 3) 기계어로 전환된 코드가 실행된다. 기계어로 전환됐기 때문에 실행 속도가 빠르다. - 브라우저에서 할 수 있는 일 1) Html 관련 수정 2) 마우스 클릭, 커서 움직임, 키보드 눌림 등 사용자 행동에 반응 3) 네트워크를 통해 원격 서버에 요청 전송, 파일 다운로드/업로드 -> ajax, comet과 같은 기술 사용 4) 쿠키 가져오기/설정하기 5) 클라이언트 측에 데이터 저장(로컬 스토리지) - 브.. 2022. 4. 14. [JavaScript] JS에서의 배열은 배열이 아니다? ※본 포스팅은 개인 학습을 목적으로 작성된 것이므로 정확하지 않은 정보가 포함되어 있을 수 있음을 참고 부탁드립니다. 사실 알고리즘 문제를 풀며, '얕은복사 vs 깊은복사'에 대하여 찾아보다가 여기까지 왔다. 두 가지 복사에 대하여 구글링해서 몇가지 포스팅을 보고, 혹시 모던 자바스크립트 Deep Dive 책에도 설명이 나와있을까 해서 배열 부분을 뒤적거리다가 '자바스크립트에 배열이라는 타입은 존재하지 않고, 배열은 객체 타입'이라는 내용을 보았다. ??? : 지금까지 arr 혹은 array라고 이름을 지어줬고, [ ] 로 초기화해 줬는걸? 아무튼 위의 한 줄은 나에게 매우 흥미로운 주제였다. 그리고 그와 함께 나는 기본 없이 3개월간 자바스크립트를 사용하고 있었던 것인가..? 라는 생각도 들었다. '얕.. 2022. 2. 5. [JavaScript] charAt(), charCodeAt(), String.fromCharCode() ※본 포스팅은 개인 학습을 목적으로 작성된 것이므로 정확하지 않은 정보가 포함되어 있을 수 있음을 참고 부탁드립니다. 🧐 자바스크립트의 다양한 문자열 관련 메서드들 중 알고리즘 문제를 풀면서 사용했던 일부를 먼저 포스팅해보려고 한다. 1. charAt() 👉String 인스턴스에서 전달받은 인덱스에 위치한 문자나 문자 코드를 반환한다. - console result 1 이미지의 console.log(str.charAt(0)); 부분을 보면, 하단에 H 라고 해당 인덱스의 문자를 출력한다. 한 가지를 더 확인해 보기 위해서 console.log(str.charAt(20)); 으로 찍어 보았는데, 만약 값이 없는 인덱스 결과를 출력할 경우 H 다음 라인과 같이 빈 문자열로 출력된다. 2. charCodeAt.. 2022. 2. 1. 이전 1 2 다음