>  기사  >  웹 프론트엔드  >  JS_javascript 기술에서 식별자가 생성되는 방식의 진화

JS_javascript 기술에서 식별자가 생성되는 방식의 진화

WBOY
WBOY원래의
2016-05-16 15:55:421098검색

1. ES5 시대

변수
기능
JS는 Java나 Ruby와 같은 다른 언어와는 다르다는 것을 알고 있습니다. 변수 이름을 지정하기 위해 var 키워드만 사용합니다. 물론, 약한 타이핑이 var로 선언된다는 의미는 아닙니다. 언어에는 유형이 없습니다. 변환은 암시적입니다(연산자에 따라 다름). 자바 등 다른 언어에서는 숫자를 선언하는 키워드로 int, float, double, long 등이 있다.

// JS
var num1 = 10;   // 整数
var num2 = 10.1;  // 浮点数
var str   = 'John'; // 字符串
var boo   = false; // 布尔
var obj   = {};  // 对象



// Java
int num1   = 10;
double num2  = 10.2;
String str   = "John";
Boolean boo = false;
 

JS에서는 var를 사용하여 식별자를 생성하는 것 외에도 식별자를 생성할 수 있는 함수 키워드도 있습니다. 함수 유형 선언의 식별자는 함수, 메서드 또는 생성자(클래스)일 수 있습니다.

// functions
function fetchData(url, param) {
  // ... 
}
 
// methods
var obj = {
  getUrl: function() {
  }
};
 
// class
function Person(name, age) {}
Person.prototype = {
}
 

2. ES6시대

변수
기능
하자
상수
수업
보시다시피 ES6에는 식별자를 생성할 수 있는 세 가지 키워드 let/const/class가 추가되었습니다. let/const는 변수를 선언하는 데 사용되며, class는 클래스를 정의하는 데 사용됩니다.

// 定义普通变量
let name = 'John';
for (let i = 0; i < arr.length; i++) {
}
if (boo) {
  let obj = {};
  ...
}
 
// 定义常量
const PI = 3.1415926;
const $el = $('.nav');
 
// 定义类
class Point {
  constructor(x, y) {
    this.x = x;
    this.y = y;
  }
  toString() {
    return '('+this.x+', '+this.y+')';
  }
}

ES6 시대에는 코딩 스타일이 "var가 적고 let이 많아야" 한다고 생각할 수 있습니다. let과 const는 모두 블록 수준 범위를 가지며 변수 승격은 발생하지 않습니다. 클래스를 선언할 때 class 키워드도 일부 기능 작업을 공유합니다.

위 내용은 이 글의 전체 내용입니다. 모두 마음에 드셨으면 좋겠습니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.