분류 전체보기

    JavaScript Scope 와 Closure

    Scope란 변수에 접근할 수 있는 범위를 나타냅니다. 블록 레벨 스코프(Block-Level Scope)를 따르는 C계열 언어들과 다르게 자바스크립트는 함수 레벨 스코프(Functional-Level Scope)를 따릅니다. 다음을 보면 function num() { var x = 10 } console.log(x) // ReferenceError: x is not defined x는 num() 이라는 함수 안에 선언이 되었기에 ReferenceError가 납니다. 즉, 외부에서는 접근하지 못합니다. 반면 다음을 보면 if (true) { var x = 10 } console.log(x) // 10 x는 if문 안에 선언이 되었습니다. C계열의 언어라면 블록안에 선언되어 접근하지 못했겠지만 자바스크립트..

    Debug JavaScript in Chrome

    크롬 브라우저의 DevTools에서 JavaScript 문제를 디버깅하기 위한 기본 WorkFlow를 설명합니다. Step 1: Reproduce the bug 버그를 일관되게 재현하는 일련의 작업을 찾는 것은 항상 디버깅의 첫 번째 단계입니다. 1. 데모페이지를 위해 아래 링크를 누르십시오. 링크가 새 탭에서 열립니다. Open Demo 2. Number 1 에 5 를 입력하세요. 3. Number 2 에 1 을 입력하세요. 4. Add Number 1 and Number 2 버튼을 클릭하세요. 결과가 6이어야 하지만 51이 나옵니다. 이것이 우리가 디버그 해야할 점입니다. Step 2: Get familiar with the Sources panel UI DevTools는 CSS 변경, 페이지 로드 ..

    [Delphi] InputBox, InputQuery 사용법

    InputBox InputBox는 Vcl.Dialogs를 use하여 사용합니다. 아래는 샘플코드입니다. procedure TForm1.Button1Click(Sender: TObject); var sString: String; begin sString := InputBox('타이틀(Title)', '입력', '값을 입력하세요'); end; 버튼을 클릭했을 때 해당 프로시져가 실행되고 아래 InputBox가 실행됩니다. 값을 입력후에 Cancel을 클릭한다면 sString에는 아무런 값이 들어가지않고 OK를 클릭한다면 sString에는 입력한 값이 들어가있을 것입니다. inputQuery InputQuery는 True, False와 같은 Boolean을 반환합니다. procedure TForm1.Butto..

    ORA-12519 TNS :no appropriate service handler found

    오라클 접속 도중 해당 에러를 발견했습니다. 찾아보니 접속할 수 있는 Process의 갯수가 정해져있기 때문에 나온다는 오류인데 SQL>SELECT * FROM v$resource_limit where resource_name='processes'; -- 접속 프로세스의 수를 확인하고 SQL> ALTER system SET processes=200 scope=spfile; -- 200으로 늘려준다. SQL> shutdown immediate; SQL> startup; 해당 명령어를 작성하면 해결이 된다는데 해결이 되지 않고 똑같은 오류가 또 생겼기에 다른 방법을 찾아봤습니다. 처음에 cmd 창에서 SQL>sqlplus/nolog SQL>connect sys/'password' as sysdba 이렇게 입..

    git clone 으로 React를 받아 실행했을 때 생긴 오류

    npm ERR! : `react-scripts start` npm ERR! spqwn ENOENT 1. npm install -g npm@latest 2. rm -rf node_modules 3. npm install 이 3가지 스텝을 따를 것

    React hooks useState의 사용

    리액트 강의 복습하며 리액트 hooks의 useState에 대해 알아보겠습니다. 페이스북의 좋아요 버튼처럼 엄지버튼을 누르면 숫자 1을 올리는 걸 해보겠습니다. let [like, setLike] = useState(0); like는 0으로 초기화 해준 것이며 setLike는 like를 변경해줄 때 사용할 것입니다. import React, { useState } from 'react'; function App() { let titel = '강남 맛집 추천'; let [like, setLike] = useState(0); return ( { title } {setLike(like + 1)} }>👍 {like} ) } export default App; onClick={} 안에는 반드시 함수가 들어가며 위..

    AWS 인스턴스에 접속, git clone(pull) 후 front/back build하기

    AWS 인스턴스에 접속하고 github에서 소스를 업데이트 받은 후 build 시 "scripts": { "start": "node scripts/start.js", "build": "node scripts/build.js", "test": "node scripts/test.js" } MyBlog/client 경로에 들어가서 1. nano .env 실행 후 수정 2. npm i 로 모듈 설치 3. npm run build 실행하여 front build "scripts": { "dev": "nodemon ./server/server.js --exec babel-node --ignore './client'", "prebuild": "cd client && npm run build", "build": "bab..