전체 글
-
map을 사용했는데 의도하지 않은 쉼표가 출력된다면?Knowledge/javascript 2022. 1. 6. 13:37
발생한 문제 redux를 공부하던 중 의도하지 않은 상황이 발생했습니다 1 2 3 4 5 6 7 8 9 10 var state = store.getState(); document.querySelector('#toc').innerHTML = ` ${state.content.map(item => ( `${item.title}` ) )} 위와 같이 store에서 state를 가져온 다음 그 내부의 content 배열을 map함수를 활용해 순회하며 각 item의 id와 title을 template literals을 활용해 작성해 둔 html 태그와 결합, 출력하는 코드를 작성했는데 이처럼 의도하지 않은 쉼표 (,) 도 함께 출력되었습니다. 원인 검색해보니 map 함수가 문자열 형태로 값을 리턴할 때는 (temp..
-
[이산수학 - 3강] 증명Knowledge/Math 2020. 5. 20. 22:49
한국방송통신대학교 이산수학 강의 3강을 듣고 공부한 내용을 정리한 포스팅입니다. 3강의 학습목표 다양한 증명방법의 종류를 이해하고 때에 따라 적절한 증명방법을 선택할 수 있다. 기본단계와 귀납가정을 설계하고 귀답단계를 통해 주어진 명제가 타당함을 증명할 수 있다. 직접적으로 명제를 증명하기 어려울 때는 증명하기 쉬운 형태로 주어진 명제를 변경할 수 있다. 전수증명, 조합적 증명법, 컴퓨터를 이용한 증명방법을 이해하고 상황에 따라 증명방법을 사용할 수 있다. - 증명의 기본 증명은 어떤 사실의 타당성을 입증하기 위해 사용된다. 주로 "P이면 Q이다", 즉 '전제가 참이면 결론도 참' 이라는 형식을 따르게 되는데 이때 전제로 사용되는 P가 참임을 증명하기 위해서는 다른 전제의 도움이 필요하다. 이렇게 계속 ..
-
[이산수학 - 2강] 명제와 명제 논리 / 술어 논리와 추론Knowledge/Math 2020. 5. 17. 22:40
한국방송통신대학교 이산수학 강의 2강을 듣고 공부한 내용을 정리한 포스팅입니다 2강의 학습목표 명제와 명제가 아닌 것을 구분할 수 있다 다양한 논리연산자의 역할을 이해하고 합성명제의 진리값을 판별할 수 있다 조건명제와 쌍조건명제를 구분하고 진리값을 찾아낼 수 있다 서로 다른 두 명제의 논리적 동치 여부를 판별할 수 있다 추론규칙 또는 벤 다이어그램을 이용하여 타당한 추론을 판별할 수 있다 - 명제 (Proposition) 참과 거짓을 구별할 수 있는 문장이나 수학적 식을 명제라고 한다. 명제가 타당할 경우 명제가 참(true)이라고 하며, 명제가 타당하지 않을 경우 거짓(false)라고 한다. 이 때 참과 거짓을 명제의 진리값이라고 한다. 종류 합성 명제, 조건 명제, 쌍조건 명제, 항진명제, 모순명제 ..
-
논리 연산자 기호(∨, ∧, ¬,~, ⊕)를 키보드로 입력하려면?Knowledge/ETC 2020. 5. 17. 17:17
이산 수학 강의를 수강한 내용을 포스팅하던 중 논리 연산자 입력에 애를 먹었습니다. 어차피 과제할 때도 비슷한 문제를 겪을 것 같아 키보드 입력 방법을 정리해 포스팅으로 남겨놓습니다 논리합, 논리곱, 부정 (∨, ∧, ¬) 이 세 개의 기호는 몰려있습니다. ㄷ을 누르고 한자를 입력해 목록을 5번 내려가면 3,4,5 번에 뭉쳐 있습니다. 부정을 의미하는 또다른 기호인 ~는 shift 누르고 tab키 위에 있는 버튼을 누르면 입력가능합니다. 배타적 논리합 (⊕) 문제는 배타적 논리합입니다. 유니코드 번호는 찾았는데 한글 키보드 특수문자로 어떻게 입력해야 할지 모르겠습니다. 결국 찾다 찾다 위키 피디아에서 해당 기호를 복사-붙여넣기 하여 사용했습니다. 당장은 이렇게 사용하는 방법 밖에 없어 보입니다. 필요하신..
-
[이산수학 - 1강] 이산수학은 무엇이며 왜 배우는 걸까?Knowledge/Math 2020. 5. 17. 14:51
한국방송통신대학교 이산수학 강의 1강을 듣고 공부한 내용을 정리한 포스팅입니다 1강의 학습목표 이산적인 데이터와 연속적인 데이터를 구분할 수 있다. 문제 해결과정에 사용되는 용어들을 도구, 기법, 방법론으로 구분할 수 있다. 추상화의 의미를 이해할 수 있다. 알고리즘을 기술하기 위한 의사코드의 사용법을 이해하고 올바르게 사용할 수 있다. - 이산수학 ( discreate mathmatics ) 이란? 이산적인 ( 연속적인 ) 수학구조에 대해서 연구하는 학문 이산적 데이터를 처리 ( ex: 아날로그 시그널, 데이터 - 변환 -> 디지털 시그널, 데이터 ) 하기 위해 필요한 수학 이산수학의 주요내용 논리, 증명, 집합, 행렬, 관계, 함수, 부울대수, 그래프, 트리, 조합이론, 알고리즘, 오토마타 ..
-
자바스크립트 모듈(Module) 학습 내용 간단 요약Knowledge/javascript 2020. 5. 3. 22:31
모듈(Module)이란? 자바스크립트 코드의 크기가 갈수록 커지고 기능도 복잡해지자 자바스크립트 커뮤니티는 코드 전체를 기능 단위의 코드 뭉치로 분해하고 필요에 따라 결합할 수 있도록 하는 시스템의 도입을 고민했습니다. 그 결과 도입된 것이 Module System입니다. 이 때 사용되는 코드 뭉치 각각을 Module이라고 합니다. 모듈 활용법 모듈을 내보낼 때는 export를, 가져올 때는 import를 활용합니다. 1. named export 모듈을 내보내는 가장 쉬운 방법은 내보내려는 항목 앞에 export 지시자를 배치하는 것입니다. 그 항목이 변수인지, 함수인지, 클래스인지는 상관없습니다. 최상위 항목이기만 하다면 이 방법으로 모두 내보낼 수 있습니다. 이런 방법을 named export라고 합..
-
React 16 에 추가된 기능들Knowledge/React 2019. 12. 18. 19:01
React 16 마스터하기 강의를 듣고 정리한 내용입니다. Fragment 이전 버전에선 하나의 element만 return 할 수 있는 React의 특성 때문에 여러 개의 태그를 리턴하기 위해선 하나의 부모 태그가 필요했고 이 때문에 의미 없는 태그가 들어가곤 했습니다. 그러나 Fragment를 활용하면 예를 들어 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 import React, { Component, Fragment } from 'react'; class ReturnTypes extends Component { render() { return ( ); } } function App() { return ( ); } export de..
-
프로젝트를 시작하기 전에 - 무엇을 어떻게 만들 것인가Knowledge/ETC 2019. 12. 17. 23:21
무엇을 만들 것인가 - 프로그래밍이란? 프로그래밍이란 말 그대로 프로그램을 만드는 것입니다. 그렇다면 프로그램은 왜 만드는 것일까요? 이에 답하기 위해선 사람들이 어디서 어떻게 프로그램을 사용하는지를 볼 필요가 있습니다. 병원에서는 모든 환자의 진료 기록을 보관하고 분석하기 위해 소프트웨어 프로그램을 쓰고 은행에서는 고객의 소중한 자산을 관리하고 보호하기 위해 소프트웨어 프로그램을 씁니다. 즉 프로그램은 특정한 분야의 어떠한 문제를 해결하기 위해 만들어집니다. 그러니까 ' 프로그래밍이란 특정한 분야의 문제를 해결하기 위해 프로그램을 만드는 것'이라고 정리할 수 있습니다. - 도메인 여기서 '해결해야 하는 문제가 있는, 프로그램을 사용할 특정한 분야'를 도메인이라고 합니다. 도메인에 대해 정확히 이해하기 ..