일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 개발
- jest
- 자바스크립트 자료구조
- 리액트 예제
- 리액트
- Svelte
- Hitit
- SWIFT
- hokidoki
- 계명대 이종호
- react
- 스위프트
- javascript
- queue
- 힛잇
- 자스민
- 비동기
- data structure
- 자료구조
- HTML
- 호키스
- IOS
- 계명대
- 개발자
- hokeys
- 호키도키
- 자바스크립트
- 스벨트
- TDD
- 이종호
- Today
- Total
목록javascript (24)
Dog foot print
어제 만들어본 stack은 가장 늦게 넣은 것이 가장 빨리 나오는 LIFO(후입선출) 의 형태를 취하고 있다. 오늘 만들어볼 queue는 FIFO(선입선출)의 형태를 하고 있으며 원시적인 선형큐를 만들어 볼 것이다. Queue 란 ? 큐는 데이터를 선입선출을 하는 자료구조이다. queue는 우리 주변에서도 많이 보이는데 카운터에서 줄을 서고 있는 손님들이나 print의 출력에서도 queue의 형태를 볼 수 있다. 선형 큐란 ? 선형큐는 재사용이 되지 않는 형태의 큐이다. 배열에 공간이 남았더라도 rear가 max_size 까지 도달 했다면 배열 전체를 초기화 하지 않으면 item을 넣지 못한다. queue의 멤버변수 max_size // queue에 저장 가능한 공간을 뜻 한다. front // queu..
수업시간에 객체지향프로그래밍의 특징으로 다형성과 은닉성에 대해서 배운적이 있다. 클래스를 정의할 때 클래스의 내부 변수들을 숨기고 싶거나 함수를 숨기고 싶어 private나 protected를 사용 한다. 그런데 이러한 기능들은 자바스크립트에서 제공 해주지 않는다. 그래서 특정한 방법으로 객체안에 있는 값을 숨길 수 있어야 한다. 캡슐화란 ? 클래스내부에 있는 값들을 외부에서 참조하지 못하도록 숨기는 것 ! function Dog(name){ var name = name; // 접근 불가능 return { hello : 10,//접근 가능 getName(){ return name; }, setName(newName){ name = newName } } } var huge = new Dog("huge");..
객체라는 것을 설명하기에는 포스팅 몇개로 끝나지는 않을 것 같기에 객체에 대한 기본적인 것만 초반에 작성하고 추후에 점차 양을 늘릴생각이다. (혹시라도 객체지향프로그래밍이 궁금하다면 꼭 보길 바란다. ) 상속 혹시 페가수스라는 생물을 아는가 ? 페가수스는 말의 모습을 하고 있지만 날개가 달린 환상의 동물이다. 이 페가수스는 부모인 말과 조류에게서 말의 형태를 물려 받았고 조류로 부터 멋진 날개와 비행실력을 가지고 있다. 이처럼 부모의 프로퍼티나 메서드를 쓸 수 있게 물려받는 것을 상속이라고 한다. class 포유류{ constructor(){ this.leftleg = "왼쪽다리"; this.rightleg = "오른쪽다리"; } hasBaby(){ console.log("새끼를 밴다.") } } cla..
배열은 다른언어에서는 같은 데이터타입이 메모리상 선형구조로 있는 자료구조를 말한다. 그러나 자바스크립트에서는 배열에 다른 데이터 타입이 들어가도 작동된다. 배열은 우리가 코드를 작성할때 코드의 라인을 여러개 쓰지 않고 각기 다른 메모리에 작성할 수 있는 이점이 있다. 배열의 구성 배열은 key와 value로 구성된다. 배열은 메모리가 연결되어 있는 모습을 하고 있는데, key는 배열에 담겨있는 값 (value)를 찾기 위해 사용되는 메모리의 번호이다. 배열의 0번 방에는 "h" 가 들어있는데 이때 0번방에 해당하는 번호가 key이다. (배열의 첫번째 방은 0부터 시작한다. ) 배열의 선언과 사용 var array = []; //선언 var array = [1,2,3,4,5,6,7,8,9,10] // 선언..
중학교 때 함수라는 것을 수학시간에 배운적이 있다. 그런데 그 때 당시 나는 수학을 너무 싫어해서 함수만 보면 경기를 하고는 했다. 그리고 나이가 들어 프로그래밍을 배우기 시작하는데 함수라는 것이 등장하였다. 중학교 때 너무나도 싫어 하던 두 글자 '함수' 였지만 어릴적 싫어하던 수학시간의 함수와 개념은 비슷했지만 이 함수를 이용하는 것은 중학교 때 보다 너무 쉬웠다. 함수란 내가 쉽게 사람들한테 설명할 수 있는 함수의 정의는 "어떤 한 행위에 대한 절차" 이다. 중학교 때 아래와 같은 그림들을 많이 보았을건데 함수는 input을 이용해서 이 input을 가공해서 output을 만들어 낼 수도 있고 input없이 output을 만들어 낼 수 있다. 쉽게 말해서 내가 지정하는 논리에 의해 함수는 특정 동작..
우리는 언제나 선택의 갈래에 서있다. 날씨가 좋으면 우산을 들고가지 않고 비가오는 날씨라면 우산을 들고가야하는 것 처럼 말이다. 소프트웨어도 언제나 똑같은 결과를 주지 않고 항상 선택에 의해 다른 결과를 반환한다. 자바스크립트도 참과 거짓에 따른 선택을 할 수 있게 도와주는데 이럴때 사용하는 것이 제어문 if 와 switch 그리고 삼항연산자이다. if 프로그래밍을 배우기 시작하면 하루 혹은 이틀만에 배우는 것이 if문 일것이다. if문은 조건에 따라서 프로그램이 다른 일을 수행할 수 있게 해준다. var a = 10; if(a < 15 ){ //실행문장 console.log("a는 15보다 작습니다. "); } 작성된 코드를 보면 if문의 오른쪽에는 () 소괄호가 있고 옆에는 {} 중괄호가 실행 문장을..
자바스크립트에서 상수와 변수(let)은 타언어에 비해 비교적 최근에 도입되었다. 그 전에는 자바스크립트로 변수를 지정하고 값을 할당할때는 var 하나로 값을 전부 할당했었는데 es6문법이 새로도입된 이후 그럴 필요가 없어졌다. 상수 const 상수는 변화하지 않는 값이다. 초기선언과 동시에 할당하지 않으면 값이 변하지 않는 수를 의미 한다. 왜 이런 상수가 필요할까 ? 프로그램에서 항상 변화하면 안되는 값들을 지정하는데 var 로 지정하게 되면 사용자들이 임의로 변경할 수 있는 여지가 있게된다. (var 변수를 캡슐화를 통해 재 할당을 방어할 수 있긴하다.) 상수의 사용은 변수명 앞에 const라는 접두어를 붙여서 사용한다. const HELLO_WORLD = "HELLO_WORLD" const TEN ..
자바스크립트를 이용해서 로직을 사용하려면 다음과 같이 html파일에 script를 작성해서 console.log() 나 alert으로 연산의 결과를 확인해야 한다. asddasd 그렇지만 나는 브라우저에서 간단한 연산을 확인하는 작업이 굉장히 불편하다고 생각하고 초보자들이 Dom트리를 배우기 전에는 굳이 html과 섞어서 사용할 이유가 없다고 생각하기에 node.js를 설치해서 연산의 결과를 확인하는 것을 추천한다. Node.js 란 무엇인가? v8엔진으로 빌드 된 이벤트 기반 자바스크립트 런타임이다. 웹 서버와 같이 확장성 있는 네트워크 프로그램 제작을 위해 고안되었다. -위키백과 node.js 설명 https://ko.wikipedia.org/wiki/Node.js Node.js - 위키백과, 우리 ..