마이라이프해피라이프

머리에 넣자. 자바스크립트 본문

컴퓨터/WEB (HTML, CSS, JS)

머리에 넣자. 자바스크립트

YONJAAN 2022. 6. 30. 01:50

1. 문자열도 역시 객체

메소드 사용 가능 .length

'hello'.charAt(0); // "h"
'hello, world'.replace('hello', 'goodbye'); // "goodbye, world"
'hello'.toUpperCase(); // "HELLO"

2. JavaScript에서 새로운 변수는 let, constvar 키워드로 선언됩니다.

 

let을 사용하면 블록 레벨 변수를 선언할 수 있습니다. 선언된 변수는 "변수가 선언된 블록"에서 사용할 수 있습니다.

const는 값이 변경되지 않을 변수를 선언할 수 있게 합니다. 변수는 "변수가 선언된 블록"에서 사용할 수 있습니다.

var 키워드는 let, const 키워드가 가지는 제한을 가지지 않습니다. 이는 JavaScript에서 변수를 선언하는 전통적으로 유일한 방법이었기 때문입니다. var 키워드로 선언 된 변수는 "변수가 선언된 함수"에서 사용 할 수 있습니다.

 

var는 변수 재선언 가능

let, const는 변수 재선언 불가능

 

let은 값 변경 가능

const는 변경 불가능

 

3. 타입 강제 변환을 하지 않게 하려면, 삼중 등호 연산자 (===)를 사용해야 합니다.

 

4. 삼항연산자

var allowed = (age > 18) ? "yes" : "no";

5. switch

switch (action) {
  case 'draw':
    drawIt();
    break;
  case 'eat':
    eatIt();
    break;
  default:
    doNothing();
}

6. JavaScript 객체는 간단히 이름-값 쌍(name-value pairs)의 모임입니다. 

 

빈객체 생성하기 (2가지 방법)

var obj = new Object();

var obj = {};

 

const obj = {
  name: 'Carrot',
  _for: 'Max', // 'for'는 예약어이므로, '_for'를 대신 사용합니다.
  details: {
    color: 'orange',
    size: 12
  }
};
function Person(name, age) {
  this.name = name;
  this.age = age;
}

// 객체를 정의합니다.
var you = new Person('You', 24);
// "You"라는 이름의 24세인 새로운 사람을 생성 중입니다.

7. Window.prompt()는 사용자가 텍스트를 입력할 수 있도록 안내하는 선택적 메세지를 갖고 있는 대화 상자를 띄웁니다.

 

8. 배열의 length 속성은 최대 인덱스에 하나를 더한 값일 뿐이라는 걸 기억해주세요.

 

9. forEach

['dog', 'cat', 'hen'].forEach(function(currentValue, index, array) {
    // currentValue나 array[index]로 무언가를 수행
}

https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach

 

Array.prototype.forEach() - JavaScript | MDN

forEach() 메서드는 주어진 함수를 배열 요소 각각에 대해 실행합니다.

developer.mozilla.org

10. apply()

avg.apply(null, [2, 3, 4, 5]); // 3.5

11. 사용자 정의 객체

JavaScript는 프로토타입 기반 언어로, C++ 이나 Java에서 발견할 수 있는 클래스 구문이 없습니다(이런 이유로 클래스 구문에 익숙한 프로그래머들이 때때로 혼란을 경험합니다). 그 대신, JavaScript는 함수를 클래스로 사용합니다.

function Person(first, last) {
  this.first = first;
  this.last = last;
  this.fullName = function() {
    return this.first + ' ' + this.last;
  };
  this.fullNameReversed = function() {
    return this.last + ', ' + this.first;
  };
}
var s = new Person('Simon', 'Willison');

Person.prototype은 모든 Person 인스턴스들 간에 공유되는 객체입니다. 이는 검색(lookup) 체인 (또는 프로토타입 체인)의 한 부분을 이룹니다. 다시 말해, Person 객체의 설정되지 않은 속성에 접근을 시도할 때마다, JavaScript는 Person.prototype에 그 속성이 존재하는지 살펴봅니다. 결과적으로 Person.prototype에 할당된 모든 것은 생성자를 통해 만들어진 인스턴스들이 this 객체를 통해 사용할 수 있게 됩니다.

function Person(first, last) {
  this.first = first;
  this.last = last;
}
Person.prototype.fullName = function() {
  return this.first + ' ' + this.last;
};
Person.prototype.fullNameReversed = function() {
  return this.last + ', ' + this.first;
};

 

출처 - javascript 재입문

https://developer.mozilla.org/ko/docs/Web/JavaScript/A_re-introduction_to_JavaScript

'컴퓨터 > WEB (HTML, CSS, JS)' 카테고리의 다른 글

[CSS] 자주 사용하는 CSS 정리  (0) 2022.03.15