개발 61

JavaScript] 자바스크립트 뿌시기 (함수도 객체다)

🎉 함수도 객체다 자바스크립트에서는 함수도 객체다. 객체는? 프로퍼티들을 가질 수 있다. function multi(x, y){ return x * y; } multi.result = multi(2, 1); multi.status = true;함수를 생성할 때 함수 코드는 [[Code]] 라는 내부 프로퍼티에 자동으로 저장된다. 🎉 함수는 값이다 자바스크립트에서 함수는 일급 객체이다. 아래의 특징이 있으면 일급 객체이다. 리터럴에 의해서 생성 변수나 배열의 요소, 객체의 프로퍼티 등에 할당 가능 함수의 인자로 전달 가능 함수의 리턴값으로 리턴 가능 동적으로 프로퍼티를 생성 및 할당 가능 변수나 프로퍼티의 값으로 할당 var ten = function () { return 10; }; console.log..

개발/JavaScript 2021.01.17

JavaScript] 자바스크립트 뿌시기 (함수 생성)

🎉 함수 정의 함수 선언문 함수 표현식 Function() 생성자 함수 함수 선언문 function add(x, y){ return x + y; } console.log(add(1,2)); // print >> 3 function 키워드로 시작한다. 함수명은 필수 사항이다. 리턴 값과 매개 변수로 넘기는 값의 변수 타입을 기재하지 않는다. 함수 표현식 생성된 함수를 변수에 할당하여 함수를 생성하는 것을 함수 표현식이라고 한다. var add = function (x, y){ return x + y; }; var plus = add; console.log(add(1,2)); // print >> 3 console.log(plus(1,2)); // print >> 3 add는 함수 이름이 아니다 ❗ 함수 리..

개발/JavaScript 2021.01.17

JavaScript] 자바스크립트 뿌시기 (기본 타입과 표준 메서드, 연산자)

🎉 기본 타입과 표준 메서드 ❓ 기본 타입은 객체가 아닌데 어떻게 메서드를 호출할 수 있을까? 기본 타입 값들에 대해 . 예약어를 사용하여 메서드를 호출할 경우, 기본 타입 값들은 메서드 처리 순간에 객체로 변환된 다음 각 타입별 표준 메서드를 호출하게 된다. 그리고 메서드 호출이 끝나면 다시 기본값으로 복귀한다. var name = 'simtistory'; console.log(name.charAt(3)); 🎉 연산자 +연산자 더하기 연산 : 두 문자가 숫자일 경우 문자열 연결 연산 : 그 외 typeof 연산자 피연산자 타입을 문자열 형태로 리턴 기본 타입 숫자 - number 문자열 - string 불린값 - boolean null - object undefined - undefined 참조 타입 ..

개발/JavaScript 2021.01.07

JavaScript] 자바스크립트 뿌시기 (배열)

🎉 배열 배열 크기를 지정하지 않아도 된다. 어떤 위치에 어느 타입의 데이터를 저장해도 된다. 배열 리터럴 대괄호를 사용 (객체 리터럴은 중괄호) var company = ['SAMSUNG', 'SK', 'LG', 'NAVER', 'HYUNDAI']; console.log(company[1]); // print >> SK 0 인덱스이다. 배열 요소 생성 아무 인덱스 위치에 값을 동적으로 추가 가능 모든 배열은 length 프로퍼티가 있다. company[10] = true; console.log(company); // print >> [ 'SAMSUNG', 'SK', 'LG', 'NA..

개발/JavaScript 2021.01.07

JavaScript] 자바스크립트 뿌시기 (프로토타입)

🎉 프로토타입 프로토타입 객체 자바스크립트의 모든 객체는 자신의 부모 역할을 하는 객체와 연결되어 있다. ( ≒ 자바의 상속 개념 ) 이런 부모 객체를 프로토타입 객체 (프로토타입)라고 부른다. 아래 코드에서 person에 toString() 메소드가 없지만, 실행되는 이유는 person의 프로토타입에 toString() 메소드가 정의되어 있기 때문이다. var person = { name: '티스토리', age: '21' } console.log(person.toString()); // print >> [object Object] console.dir(person); // print >> { name: '티스토리', age: 21 } ECMAScript 명세서에는 자바스크립트의 모든 객체는 자신의 프로..

개발/JavaScript 2021.01.05