전체 글
-
Object - 객체지향 | 생활코딩Javascript/ECMAScript 2009 (ES5) 2020. 2. 11. 01:07
[출처 : https://opentutorials.org] Object Object 객체는 객체의 가장 기본적인 형태를 가지고 있는 객체이다. 다시 말해서 아무것도 상속받지 않는 순수한 객체다. 자바스크립트에서는 값을 저장하는 기본적인 단위로 Object를 사용한다. (Object : 모든 객체가 상속하는 조상 객체) 동시에 자바스크립트의 모든 객체는 Object 객체를 상속 받는데, 그런 이유로 모든 객체는 Object 객체의 프로퍼티를 가지고 있다. Object API (Object가 가진 메소드) # Object.메소드() : Object 자신만 쓸 수 있음. (함수객체에 있는 메소드) // Object.keys() var pesron = {"name":"agal","age":20,"city":"s..
-
확장된 매개변수 처리 - 문법 | PoiemawebJavascript/ECMAScript 2015 (ES6) 2020. 2. 10. 21:59
[출처 : https://poiemaweb.com] 1. 매개변수 기본값 (Default Parameter value) 함수를 호출할 때 매개변수의 개수만큼 인수를 전달하는 것이 일반적이지만 그렇지 않은 경우에도 에러가 발생하지는 않는다. 함수는 매개변수의 개수와 인수의 개수를 체크하지 않는다. 인수가 부족한 경우, 매개변수의 값은 undefined이다. ① - 따라서 매개변수에 적절한 인수가 전달되었는 지 함수 내부에서 확인할 필요가 있다. ② - ES6에서는 매개변수 기본값을 사용하여 함수 내에서 수행하던 인수 체크 및 초기화를 간소화할 수 있다. 매개변수 기본값은 매개변수에 인수를 전달하지 않았을 경우에만 유효하다. // ① - ES5 function sum(x, y) { // 매개변수의 값이 fa..
-
표준 내장 객체의 확장 - 객체지향 | 생활코딩Javascript/ECMAScript 2009 (ES5) 2020. 2. 10. 18:30
[출처 : https://opentutorials.org] 표준 내장 객체의 확장 표준 내장 객체(Standard Built-in Object)는 자바스크립트가 기본적으로 가지고 있는 객체들을 의미한다. 내장 객체가 중요한 이유는 프로그래밍을 하는데 기본적으로 필요한 도구들이기 때문에다. 결국 프로그래밍이라는 것은 언어와 호스트 환경에 제공하는 기능들을 통해서 새로운 소프트웨어를 만들어내는 것이기 때문에 내장 객체에 대한 이해는 프로그래밍의 기본이라고 할 수 있다. 자바스크립트 언어는 아래와 같은 내장 객체를 가지고 있다. ㆍObject ㆍFunction ㆍArray ㆍString ㆍBoolean ㆍNumber ㆍMath ㆍDate ㆍRegExp + 자바스크립트가 동작하는 호스트 환경이 제공하는 API ..
-
prototype - 객체지향 | 생활코딩Javascript/ECMAScript 2009 (ES5) 2020. 2. 9. 22:03
[출처 : https://opentutorials.org] Prototype prototype이란 무엇인가? 한국어로는 원형정도로 번역되는 prototype은 말 그대로 객체의 원형이라고 할 수 있다. 함수는 객체다. 그러므로 생성자로 사용될 함수도 객체다. 객체는 프로퍼티를 가질 수 있는데 prototype이라는 프로퍼티는 그 용도가 약속되어 있는 특수한 프로퍼티다. prototype에 저장된 속성들은 생성자를 통해서 객체가 만들어질 때 그 객체에 연결된다. function Ultra(){}; Ultra.prototype.ultraProp = true; function Super(){}; Super.prototype = new Ultra(); function Sub(){}; Sub.prototype =..
-
상속 - 객체지향 | 생활코딩Javascript/ECMAScript 2009 (ES5) 2020. 2. 9. 15:46
[출처 : https://opentutorials.org] 상속(inheritance)이란? 객체는 연관된 로직들로 이루어진 작은 프로그램이라고 할 수 있다. 상속은 객체의 로직을 그대로 물려 받는 또 다른 객체를 만들 수 있는 기능을 의미한다. 기존의 로직을 수정하고 변경해서 파생된 새로운 객체를 만들 수 있게 해준다. 상속을 위한 기본적인 준비는 다음과 같다. function Gundam(code){ this.code = code; } Gundam.prototype.code=null; Gundam.prototype.introduce = function(){ return "This is "+name; } var first = new Gundam("RX-78-2") console.log(first.int..
-
this - 객체지향 | 생활코딩Javascript/ECMAScript 2009 (ES5) 2020. 2. 9. 14:52
[출처 : https://opentutorials.org] this this는 함수 내에서 함수 호출 맥락(context)를 의미한다. 맥락이라는 것은 상황에 따라서 달라진다는 의미인데 즉 함수를 어떻게 호출하느냐에 따라서 this가 가리키는 대상이 달라진다는 뜻이다. 함수와 객체의 관계가 느슨한 자바스크립트에서 this는 이 둘을 연결시켜주는 실질적인 연결점의 역할을 한다. 함수호출 함수를 호출했을 때 this는 전역객체인 window와 같다. function func() { if (this === window) { console.log ("this is window") } } func(); //this is window 메소드의 호출 객체의 소속인 메소드의 this는 그 객체를 가르킨다. var ob..
-
전역객체 - 객체지향 | 생활코딩Javascript/ECMAScript 2009 (ES5) 2020. 2. 8. 17:24
[출처 : https://opentutorials.org] 전역객체란? 전역객체(Global object)는 특수한 객체다. 모든 객체는 이 전역객체의 프로퍼티다. 모든 전역변수와 함수는 사실 window 객체의 프로퍼티다. 객체를 명시하지 않으면 암시적으로 window의 프로퍼티로 간주된다. var object = { 'func' : function(){ console.log("Hello") } } object.func(); // Hello window.object.func(); // Hello 전역객체 API ECMAScript에서는 전역객체의 API를 정의해두었다. 그 외의 API는 호스트 환경에서 필요에 따라서 추가로 정의하고 있다. 이를테면 웹브라우저 자바스크립트에서는 alert()이라는 전역객..
-
생성자와 new - 객체지향 | 생활코딩Javascript/ECMAScript 2009 (ES5) 2020. 2. 8. 16:50
https://opentutorials.org] 객체 객체란 서로 연관된 변수와 함수를 그룹핑한 그릇. 객체 내의 변수를 프로퍼티(property), 함수를 메소드(method)라고 부른다. var person = { 'name' : 'egoing', // 프로퍼티 'introduce' : function(){ // 메소드 return 'My name is '+this.name; } } document.write(person.introduce()); 만약 다른 사람의 이름을 담을 객체가 필요하다면 객체의 정의를 반복해야 할 것이다. 객체의 구조를 재활용할 수 있는 방법이 필요하다. 이 때 사용하는 것이 생성자다. ※ 프로토타입 기반 프로그래밍(Prototype-based Programming) 객체지향 ..