분류 전체보기 64

[JavaScript] 변수와 상수 (let, const)

기본 중에 기본이지만 다시 돌아보는 차원에서 변수 란 데이터를 저장할 때 쓰이는 이름이 붙은 저장소. let 를 사용해 변수를 사용한다. 보통 항상 데이터를 넣어서 선언을 했었는데 let message; 이렇게 선언만하고 데이터를 안넣어도 됨 근데 잘 안쓴다 let user = 'john', age = 25, message = 'Hello'; 이렇게 한줄에 다 할 수도 있지만 가독성이 안좋아서 길어지더라도 나눠서 하는게 좋다 let 은 두번 선언하면 에러를 뱉어낸다 let message = "This"; // 'let'을 반복하면 에러가 발생합니다. let message = "That"; // SyntaxError: 'message' has already been declared 변수 명명 규칙 두가지 ..

JavaScript/Basics 2022.03.09

[JavaScript] 오래된 var의 특징

Var 조금 구식인건 알고있었지만 오래된 스크립트에서 let 대신 var를 쓰는 경우가 있는데 이건 오래된 방식이다 조금 더 깊게 파헤쳐보자면 var 는 블록 스코프가 없다. (scope: 범위) 이게 무슨 말이냐면 이렇게 선언된 변수의 스코프는 함수 스코프이거나 전역 스코프 이다. 블록을 기준으로 스코프가 생기지 않기에 밖에서 접근이 가능하다. if (true) { var test = true; //let test=true; 면 밖에서 부를 수 없음 } alert(test); 함수 안에 있다면 위에 말했던 것처럼 전역 스코프 or 함수 스코프 이기에 함수 안에 있으니 함수 안으로만 범위가 설정된다. function sayHi() { if (true) { var phrase = "Hello"; } ale..

JavaScript/Basics 2022.03.09

[JavaScript] use strict / 엄격모드

JS는 꽤 오랫동안 호환성 이슈 없이 발전해왔고 기존의 기능을 변경하지 않으면서 새로운 기능이 추가되었습니다. 덕분에 기존에 작성한 코드는 절대 망가지지 않지만 초기에 했던 실수나 불완전한 결정이 언어 안에 영원히 박제된다는 단점도 생겼다고 한다 ... ES5가 나온 이후 (현재 ES6)에서는 새로운 기능이 추가되고 기존 기능 중 일부가 변경되었기 때문에 하위 호환성 문제가 생길 수 있다. 그래서 생긴게 이 strict mode 사용을 위한 use strict인데 단순 스트링(문자열)처럼 생겼지만 이게 최상단에 오면 (함수 안 최상단도 올 수 있음) '모던'한 자바 스크립트로 동작한다 브라우저 콘솔에서 사용하려면 기본적으로 적용이 안되는 상태인데 사용하고 싶다면 ⇧ + ↩ 를 눌러서 다음 줄로 넣어서 적..

JavaScript/Basics 2022.03.08

[JavaScript] 스크립트 태그 사용 시 주의점

먼저 스크립트 태그의 사용법을 알아보자면 먼저 JS 코드의 양이 많은 경우엔, 파일로 나눠서 저장 가능. 이렇게 나눠놓은 각 파일을 src속성을 사용해서 HTML에 삽입한다 경로는 상대 경로 또는 절대경로로 나타낼 수 있는데 위에 코드는 절대 경로이고 같은 폴더의 파일을 불러오게 되면 단순하게 src="파일이름.js"로 나타낼 수도 있다 파일이 아니라면 외부 링크에서도 가져올 수 있다. 예로 여러개도 가져올 수 있다 … 당연하게도 HTML안에 JS코드를 넣어 실행시킬 수 있지만, 이런 방식은 스크립트가 간단할 때만 쓰자. 왜냐면 별도의 파일에 작성하게 되면 브라우저가 스크립트를 다운받아서 캐시에 저장하기 때문에 성능상의 이점이 있다! 예로 여러페이지에서 동일한 스크립트를 사용하면 브라우저는 페이지가 바뀔..

JavaScript/Basics 2022.03.08

[JavaScript] 자바스크립트란?

이는 웹에 생동감을 불어넣어주기 위해서 만들어진 언어 JS로 작성한 프로그램을 스크립트라고 부르는데, 이는 웹페이지의 HTML 안에 작성하 수 있는데 스크립트가 자동으로 실행됨. 이름이 왜 자바스크립트냐? -> 원래는 라이브스크립트였음. 근데 인기많았던 자바의 등에 업히려고 이렇게 지었다고 한다ㅋㅋㅋ 거기다 ECMAScript라는 고유한 독립적인 언어가 되었는데 ECMAScript = 자바스크립트의 토대를 구성하는 스크립트 언어 ECMA International표준화 기구에 의해서 표준화됨. 브라우저를 위해서 만들어졌지만 서버를 위해서도 동작함 (아마 Node.js 등) 이 외에도 JS엔진이 들어있으면 동작이 가능 브라우저에선 JVM (Javascript virtual machine)이라는 내장 엔진이 ..

JavaScript/Basics 2022.03.08

[JavaScript] - 백준 10757

문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0 < A,B < 1010000) 출력 첫째 줄에 A+B를 출력한다. 예제 입력 1 복사 9223372036854775807 9223372036854775808 예제 출력 1 복사 18446744073709551615 내가 적은 코드 var fs = require("fs"); var input = fs.readFileSync("예제.txt").toString().split(" "); let a = BigInt(input[0]); let b = BigInt(input[1]); console.log((a + b)); 이렇게 적으면 출력 끝에 n이 나오게되서184467440737095516..

JavaScript 2022.03.02

[JavaScript] Set집합을 통해 중복을 없애보자

코테 준비를 하는 도중 다른 분들이 하신거보고 아주 깔끔하게 되어있는데 그 분은 Set을 활용했더라고..? 알고는 있는데 내가 직접 쓸 줄 알아야지.. 암튼 Set(집합)은 값들의 집합을 이야기하는데 가장 특징은 하나의 값은 Set안에 하나만 존재한다!! 이게 젤 중요한 것. 하나의 값은 중복되지 않고 하나만 나온다. 요소 순서도 의미가 없다.... 그리고 정말 어이없는게 요딴 식으로 나온다. 보면 앞에 set(개수)와 셋 집합이 나와있는데 중복이 제거된걸 볼 수가 있다. 난 위에처럼 써서 중복을 없앴는데 밑에꺼 처럼 하셨더라고 ... 스프레드 신택스 써줬는데 이건 또 왜 쓴거지 해서 직접 콘솔 찍어보니까 저 보기싫은 set(3)이랑 객체아닌 객체에서 밖으로 빼내주는 놀라운 현상을 볼 수 있음.

JavaScript 2022.02.23

Klaytn IDE 에서 Deploy & Run 버튼이 보이지 않을 때

갑자기 파일들 다 없어지고 Deploy & Run 버튼이랑 Compiler탭이 없어지는 현상 발생 ??? 자 차근차근 알아보자 Compiler같은 경우엔 플러그인 (전기코드 로고) 에서 추가가 가능한데 왜 Deploy & Run은 없어??? 하지만 시크릿 모드 에서 열었을 때는 있음. (당연하게도) 즉 크롬에서 무언가 바뀌었거나 이상이 생겼다고 판단. 리믹스에서도 분명 같은 현상이 일어날 것 같다고 생각해서 키워드를 Remix ide Deploy & Run button missing 이런 식으로 검색해서 찾아본 결과 시작하기 전에 컨트랙 파일들 모두 백업 하시길. 무 조 건!!!! Chrome inspector 들어가서 (F12 혹은 맥에선 ⌘ + ⌥ + i) 어플리케이션 탭에서 로컬 스토리지들을 지워주..

BlockChain/Solidity 2022.02.11