일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 투자
- C++
- C
- 화장품
- 프로그래머스 알고리즘 공부
- 독서
- 자바스크립트
- 재테크
- 다독
- 프로그래밍언어
- 경제
- 책을알려주는남자
- algorithmTest
- 알고리즘공부
- Java
- 주식
- JavaScript
- 알고리즘트레이닝
- algorithmtraining
- 책알남
- 채권
- 알고리즘 공부
- 성분
- 백준알고리즘
- 서평
- 독후감
- 자바
- algorithmStudy
- 돈
- 지혜를가진흑곰
- Today
- Total
목록[Snow-ball]프로그래밍(컴퓨터) (331)
탁월함은 어떻게 나오는가?
객체지향 프로그래밍에서 객체는 상태(state)를 나타내는 프로퍼티와 동작(behavior)을 나타내는 메서드를 하나의 논리적인 단위로 묶은 복잡적인 자료구조다. 정리하면, 객체 = 상태 + 동작 표현 가능하다. 동작을 나타내는 메서드는 프로퍼티를 참조하고 변경할 수 있다. 이때 메서드가 자신이 속한 객체의 프로퍼티를 참조하려면 먼저 자신이 속한 객체를 가리키는 식별자를 참조할 수 있어야 한다. 객체 리터럴 방식으로 생성한 객체의 경우 메서드 내부에서 메서드 자신이 속한 객체를 가리키는 식별자를 재귀적으로 참조할 수 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 const circle = { // 프로퍼티: 객체 고유의 상태 데이터 radius: 5, // 메서드: 상태 데이터를 참조하고 ..
자바스크립트 객체의 분류 3개의 자바스크립트 객체 1) 표준 빌트인 객체(standard built-in objects/native objects/global objects) 표준 빌트인 객체는 ECMAScript 사양에 정의된 객체를 말하며, 애플리케이션 전역의 공통 기능을 제공한다. 표준 빌트인 객체는 ECMAScript 사양에 정의된 객체이므로 자바스크립트 실행 환경(브라우저 또는 Node.js 환경)과 관계없이 언제나 사용할 수 있다. 표준 빌트인 객체는 전역 객체의 프로퍼티로서 제공된다. 따라서 별도의 선언 없이 전역 변수처럼 언제나 참조할 수 있다. 2) 호스트 객체(host objects) 호스트 객체는 ECMAScript 사양에 정의되어 있지 않지만 자바스크립트 실행 환경(브라우저 환경 또..
strict mode란? 1 2 3 4 5 6 function foo() { x = 10; } foo(); console.log(x); // 10 cs 자바스크립트 엔진은 먼저 foo 함수의 스코프에서 x 변수의 선언을 검색한다. foo 함수의 스코프에는 x 변수의 선언이 없으므로 검색에 실패할 것이고, 자바스크립트 엔진은 x 변수를 검색하기 위해 foo 함수 컨텍스트의 상위 스코프(위 예제의 경우 전역 스코프)에서 x 변수의 선언을 검색한다. 전역 스코프에도 x 변수의 선언이 존재하지 않기 때문에 ReferenceError를 발생시킬 것 같지만 자바스크립트 엔진은 암묵적으로 전역 객체에 x 프로퍼티를 동적 생성한다. 이때 전역 객체의 x 프로퍼티는 마치 전역 변수처럼 사용할 수 있다. 이러한 현상을 암..
자바스크립트는 명령형(imperative), 함수형(functional), 프로토타입 기반(prototype-based) 객체지향 프로그래밍(OOP: Object Oriented Programming)을 지원하는 멀티 패러다임 프로그래밍 언어다. 자바스크립트는 public, private, pretected 등이 없어서 객체지향 프로그래밍 언어가 아니라고 오해하지만, 클래스 기반 객체지향 프로그래밍 언어보다 효율적이며 더 강력한 객체지향 프로그래밍 능력을 지니고 있는 프로토타입 기반의 객체지향 프로그래밍 언어다. 클래스 자바스크립트 클래스는 ES6부터 도입되었다. 하지만 ES6의 클래스가 기존의 프로토타입 기반 객체지향 모델을 폐지하고 새로운 객체지향 모델을 제공하는 것은 아니다. 클래스도 함수이며, 기..
문제 설명 코니는 영어 단어가 적힌 카드 뭉치 두 개를 선물로 받았습니다. 코니는 다음과 같은 규칙으로 카드에 적힌 단어들을 사용해 원하는 순서의 단어 배열을 만들 수 있는지 알고 싶습니다. * 원하는 카드 뭉치에서 카드를 순서대로 한 장씩 사용합니다. * 한 번 사용한 카드는 다시 사용할 수 없습니다. * 카드를 사용하지 않고 다음 카드로 넘어갈 수 없습니다. * 기존에 주어진 카드 뭉치의 단어 순서는 바꿀 수 없습니다. 예를 들어 첫 번째 카드 뭉치에 순서대로 ["i", "drink", "water"], 두 번째 카드 뭉치에 순서대로 ["want", "to"]가 적혀있을 때 ["i", "want", "to", "drink", "water"] 순서의 단어 배열을 만들려고 한다면 첫 번째 카드 뭉치에서 ..
1. jetbrains 접속하기 https://www.jetbrains.com/community/education/#students Free Educational Licenses - Community Support Learn or teach how to code with best-of-industry tools from JetBrains. Free Educational Licenses for JetBrains' tools. www.jetbrains.com - 하단으로 내려가서 [ Apply Now ] 클릭 * UI의 경우가 변경될 수 있으니 참고해야한다. * 2. 정보 입력 및 신청 - 인증을 받기 위한 정보 입력해야한다. - email은 학교 이메일로 입력해야한다. - 정보 입력 후 [ 무료 제품 신청..
Object 생성자 함수 생성자 함수(constructor)란 new 연산자와 함께 호출하여 객체(인스턴스)를 생성하는 함수를 말한다. 생성자 함수에 의해 생성된 객체를 인스턴스(instance)라 한다. 자바스크립트는 Object 생성자 함수이외에도 String, Number, Boolean, Fucntion, Array, Date, RegExp, Promise 등의 빌트인(built-in)생성자 함수를 제공한다. 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 32 33 34 // String 생성자 함수에 의한 String 객체 생성 const strObj = new String('Lee'); co..
프로퍼티 어트리뷰트에는 내부 슬롯(internal slot)과 내부 메서드(internal method)가 존재한다. 내부 슬롯과 내부 메서드는 자바스크립트 엔진에서 실제로 동작하지만 개발자가 직접 접근할 수 있도록 외부로 공개된 객체의 프로퍼티는 아니다. 즉, 일부 내부 슬롯과 내부 메서드르 제외하고는 직접적으로 접근하거나 호출할 수 있는 방법은 제공하지 않는다. 자바스크립트 모든 객체는 [[Prototype]]이라는 내부 슬롯을 갖는다. 객체안에 [[Prototype]]이 존재하면 접근할 수 있을것 같지만 접근 불가능하다. 단, __proto__ 통해서 간접적으로 접근할 수 있다. 1 2 3 4 5 6 const obj = {}; // 내부 슬롯은 자바스크립트 엔진의 내부 로직이므로 직접 접근할 수 ..