JS 40

4. 변수

1. 변수란 무엇인가? 왜 필요한가? - 변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체, 또는 그 메모리 공간을 식별하기 위해 붙인 이름이다. - 메모리공간에 저장된 값을 식별 할 수 있는 고유한 이름을 변수이름/변수명 이라고 한다. - 변수에 저장된 값은 변수 값이라고 한다. - 변수에 값을 저장하는 것을 할당(대입,저장) 이라고 한다. - 변수에 저장된 값을 읽어 들이는 것을 참조라고 한다. 2. 식별자 - 변수 이름은 식별자(identifier) 라고도 한다. - 식별자는 어떤 값을 구별해 식별할 수 있는 고유한 이름을 말한다. - 식별자는 값이 저장되어 있는 메모리 주소와 매핑 관계를 맺으며, 이 매핑 정보도 메모리에 저장되어야 한다. - 식별자는 값이 아니라 메모리 주소를 기억하고 ..

3. 자바스크립트 개발 환경과 실행 방법

1. 자바스크립트 실행 환경 - 브라우저와 Node.js는 용도가 다르다. 브라우저 : HTML, CSS, JS를 실행해 웹페이지를 브라우저 화면에 렌더링 하는 것 Node.js : 브라우저 외부에서 자바스크립트 실행 환경을 제공. - 따라서 브라우저와 Node.js에서 ECMAScript외에 추가로 제공되는 기능은 호환되지 않음 (ex. 브라우저의 DOM API, Node의 File I/O) - 브라우저는 ECMAScript와 클라이언트 사이드 Web API를 지원. - Node.는 ECMAScript와 Node.js고유의 API 지원. 2. 웹 브라우저 2.1 개발자 도구 - F12로 열 수 있다. - Element, Console, Sources, Network, Application 이 존재한다...

2. 자바스크립트란?

1. 자바스크립트의 탄생 - 넷스케이프 커뮤니케이션즈가 1995년 브라우저에서 동작하는 경량 프로그래밍 언어를 도입. - 제작자는 브렌던 아이크. - 1996년 3월 넷스케이프 네비게이터2에 탑재되었고, Mocha 라는 이름으로 명명됨. - 그해 9월 LiveScript로 이름이 바뀌고, 12월에 JavaScript라는 이름으로 바뀌었다. 2. 자바스크립트의 표준화 - 1996년 8월 MS는 자바스크립트의 파생버전인 "JScript"를 IE에 탑재. - JavaScript와 JScript가 표준화 되지 못하고 부분적으로만 호환되는 문제가 발생. - 결국 넷스케이프와 MS는 자사 브라우저의 점유율을 높이기 위해 자사브라우저에서만 동작하는 기능들을 추가하기 시작. - 이로인해 브라우저에 따라 웹페이지가 비정..

1. 프로그래밍

1. 프로그래밍이란? - 컴퓨터에게 실행을 요구하는 커뮤니케이션 - 0과 1만 아는 기계도 실행할 수 있을정도로 정확하고 상세한 요구사항을 설명. 2. 프로그래밍 언어 - 기계어를 대안할 프로그래밍 언어를 사용해 프로그램을 작성한다. - 작성한 후, 컴퓨터가 이해할 수 있는 기계어로 번역기를 이용해 변환하는 작업을 한다. - 이 번역기를 컴파일러 혹은 인터프리터라고 한다. - 언어는 자연어와 인공어로 구분되어 있고, 프로그래밍 언어는 인공어이다. - 프로그래밍 언어는 구문(syntax)과 의미(semantics)의 조합으로 표현된다. 결론: 프로그래밍은 요구사항의 집합을 분석해, 적절한 자료구조와 함수의 집합으로 변환한 후, 그 흐름을 제어하는것

피셔 예이츠 셔플

const hor = parseInt(document.querySelector('#hor').value); const ver = parseInt(document.querySelector('#ver').value); const mine = parseInt(document.querySelector('#mine').value); console.log(hor,ver,mine); let minelist = Array(hor*ver) //가로 +세로의 크기만큼 배열생성 .fill() //배열을 undefine으로 채움 .map((element,idx)=>{ //map을 이용해 모든 배열에 각각의 idx +1만큼을 대치시켜줌) return idx+1; }); let suffle = []; while(minelist...

JS/제로초 JS 2021.04.29

3-1. window 객체

window 객체는 기본적으로 브라우저가 제공하기때문에 우리가 생성하지 않아도 존재한다. window객체에서 화면을 담당하는 객체는 document객체이다 ( window['document'] ) (윈도우는 브라우저, document는 하나의 탭, 페이지라고 생각하면 된다.) window는 브라우저 전체를 담당한다. alert()는 window.alert인데 window는 생략할 수 있다. window는 모든곳에서 접근이 가능하기 때문에 전역객체이다.

JS/제로초 JS 2021.04.29

1. 변수 primitive 타입과 object의 차이점

//담을 수 있는 가장 작은단위의 애들을 primitive type data라고 한다 (number,String,boolean, null, undefined) let number = 2; let number2 = number; //number에 있는 data를 number2에 복사해서 가져온다(각각독립됨) console.clear(); //object let obj = { name:"ellie", age:5, }; console.log(obj.name); let obj2 = obj; //obj가 가지고있는 주소가 obj2에 복사됨 console.log(obj2.name); obj.name = 'james'; console.log('--------------') console.log(obj.name); c..

13. 비동기의 꽃 JavaScript async 와 await 그리고 유용한 Promise APIs

// async & await // promise의 깔끔한 타입!! //1. async async function fetchUser(){ //함수앞에 'async'를 써주면 함수의 return으로 new Promise를 쓰지 않아도 자동으로 입력한것처럼 처리해준다 //네트워크통신을해서 10초정도 걸리는중.... return 'ellie' } const user = fetchUser(); user.then(console.log); console.log(user); //비동기처리를 하지않으면 JS는 동기적으로 처리한다.(로딩이 길다면 사용자는 오래 기다려야한다.) //2. await function delay(ms){ return new Promise (resolve =>setTimeout(resolve,m..