Heim  >  Artikel  >  Web-Frontend  >  Die Entwicklung der Art und Weise, wie Bezeichner in JS_Javascript-Kenntnissen generiert werden

Die Entwicklung der Art und Weise, wie Bezeichner in JS_Javascript-Kenntnissen generiert werden

WBOY
WBOYOriginal
2016-05-16 15:55:421098Durchsuche

1. ES5-Ära

var
Funktion
Wir wissen, dass JS nicht wie andere Sprachen wie Java und Ruby das Schlüsselwort var verwendet, um Variablen zu benennen. Natürlich bedeutet eine schwache Typisierung, dass das Die Sprache hat keinen Typ. Ihr Typ wird zur Laufzeit bestimmt (abhängig vom Operator). In anderen Sprachen wie Java umfassen die Schlüsselwörter zum Deklarieren von Zahlen int, float, double und 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;
 

Zusätzlich zur Verwendung von var zum Generieren von Bezeichnern in JS gibt es auch ein Funktionsschlüsselwort, das ebenfalls Bezeichner generieren kann. Der Bezeichner einer Funktionstypdeklaration kann eine Funktion, Methode oder ein Konstruktor (Klasse) sein.

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

2. ES6-Ära

var
Funktion
lass
const
Klasse
Wie Sie sehen, fügt ES6 drei Schlüsselwörter let/const/class hinzu, die Bezeichner generieren können. let/const wird zum Deklarieren von Variablen und class zum Definieren von Klassen verwendet.

// 定义普通变量
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+')';
  }
}

In der ES6-Ära können Sie sich vorstellen, dass unser Codierungsstil „weniger var und mehr let“ sein sollte. Sowohl let als auch const haben einen Gültigkeitsbereich auf Blockebene und es wird keine Variablenheraufstufung stattfinden. Bei der Deklaration einer Klasse wird auch das Schlüsselwort class verwendet, das einige der Aufgaben der Funktion teilt.

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er gefällt Ihnen allen.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn