Hướng dẫn JS

JS TRANG CHỦ Giới thiệu JS JS Đến đâu Đầu ra JS Tuyên bố JS Cú pháp JS Bình luận JS Biến JS JS Hãy JS Const Toán tử JS Số học JS Chuyển nhượng JS Các loại dữ liệu JS Các hàm JS Đối tượng JS Sự kiện JS Chuỗi JS Phương thức chuỗi JS Tìm kiếm chuỗi JS Mẫu chuỗi JS Số JS Phương thức số JS Mảng JS Phương thức mảng JS Sắp xếp mảng JS Lặp lại mảng JS JS Array Const JS ngày Định dạng ngày JS Ngày lấy phương thức JS Phương pháp đặt ngày JS Toán JS JS ngẫu nhiên JS Booleans So sánh JS Điều kiện JS Chuyển đổi JS JS Loop cho JS Loop For In JS Loop For Of JS lặp trong khi JS Break JS lặp lại Bộ JS Bản đồ JS JS Typeof Chuyển đổi loại JS JS Bitwise JS RegExp Lỗi JS Phạm vi JS JS Hoists Chế độ nghiêm ngặt JS JS từ khóa này Hàm mũi tên JS Lớp JS JS JSON Gỡ lỗi JS Hướng dẫn kiểu JS Các phương pháp hay nhất về JS JS sai lầm Hiệu suất JS JS dành riêng từ

Phiên bản JS

Phiên bản JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS IE / Edge Lịch sử JS

Đối tượng JS

Định nghĩa đối tượng Thuộc tính đối tượng Phương thức đối tượng Hiển thị đối tượng Người truy cập đối tượng Trình tạo đối tượng Nguyên mẫu đối tượng Đối tượng lặp lại Bộ đối tượng Bản đồ đối tượng Tham chiếu đối tượng

Các hàm JS

Định nghĩa hàm Tham số chức năng Lời mời hàm Gọi hàm Áp dụng chức năng Chức năng đóng cửa

Lớp JS

Giới thiệu Lớp học Kế thừa giai cấp Lớp tĩnh

JS Async

Gọi lại JS JS không đồng bộ JS hứa JS Async / Await

JS HTML DOM

Giới thiệu DOM Phương thức DOM Tài liệu DOM Phần tử DOM DOM HTML Các biểu mẫu DOM DOM CSS Hoạt ảnh DOM Sự kiện DOM Trình xử lý sự kiện DOM Điều hướng DOM Nút DOM Bộ sưu tập DOM Danh sách nút DOM

BOM trình duyệt JS

Cửa sổ JS Màn hình JS Vị trí JS Lịch sử JS JS Navigator JS Popup Alert Thời gian JS JS Cookies

API web JS

Giới thiệu API Web API biểu mẫu web API lịch sử web API lưu trữ web API công nhân web API tìm nạp web API vị trí địa lý web

JS AJAX

Giới thiệu về AJAX AJAX XMLHttp Yêu cầu AJAX Phản hồi AJAX Tệp XML AJAX AJAX PHP AJAX ASP Cơ sở dữ liệu AJAX Ứng dụng AJAX Ví dụ về AJAX

JS JSON

Giới thiệu JSON Cú pháp JSON JSON so với XML Các loại dữ liệu JSON Phân tích cú pháp JSON JSON Stringify Đối tượng JSON Mảng JSON Máy chủ JSON JSON PHP HTML JSON JSON JSONP

JS so với jQuery

Bộ chọn jQuery jQuery HTML jQuery CSS jQuery DOM

Đồ họa JS

Đồ họa JS JS Canvas JS Plotly JS Chart.js JS Google Chart JS D3.js

Ví dụ về JS

Ví dụ về JS JS HTML DOM Đầu vào HTML JS Đối tượng HTML JS Sự kiện HTML JS Trình duyệt JS Trình chỉnh sửa JS Bài tập JS JS Quiz Chứng chỉ JS

Tham khảo JS

Đối tượng JavaScript Đối tượng DOM HTML


Lịch sử JavaScript


JavaScript / ECMAScript

JavaScript được Brendan Eich phát minh vào năm 1995.

Nó được phát triển cho Netscape 2 và trở thành tiêu chuẩn ECMA-262 vào năm 1997.

Sau khi Netscape bàn giao JavaScript cho ECMA, tổ chức Mozilla tiếp tục phát triển JavaScript cho trình duyệt Firefox. Phiên bản mới nhất của Mozilla là 1.8.5. (Giống hệt với ES5).

Internet Explorer (IE4) là trình duyệt đầu tiên hỗ trợ ECMA-262 Edition 1 (ES1).

Năm ECMATrình duyệt
1995   JavaScript được phát minh bởi Brendan Eich
1996   Netscape 2 được phát hành với JavaScript 1.0
1997   JavaScript đã trở thành một tiêu chuẩn ECMA (ECMA-262)
1997 ES1 ECMAScript 1 đã được phát hành
1997 ES1 IE 4 là trình duyệt đầu tiên hỗ trợ ES1
1998 ES2 ECMAScript 2 đã được phát hành
1998   Netscape 42 được phát hành với JavaScript 1.3
1999 ES2 IE 5 là trình duyệt đầu tiên hỗ trợ ES2
1999 ES3 ECMAScript 3 đã được phát hành
2000 ES3 IE 5.5 là trình duyệt đầu tiên hỗ trợ ES3
2000   Netscape 62 được phát hành với JavaScript 1.5
2000   Firefox 1 được phát hành với JavaScript 1.5
2008 ES4 ECMAScript 4 đã bị bỏ qua
2009 ES5 ECMAScript 5 đã được phát hành
2011 ES5 IE 9 là trình duyệt đầu tiên hỗ trợ ES5 *
2011 ES5 Firefox 4 được phát hành với JavaScript 1.8.5
2012 ES5 Hỗ trợ đầy đủ cho ES5 trong Safari 6
2012 ES5 Hỗ trợ đầy đủ cho ES5 trong IE 10
2012 ES5 Hỗ trợ đầy đủ cho ES5 trong Chrome 23
2013 ES5 Hỗ trợ đầy đủ cho ES5 trong Firefox 21
2013 ES5 Hỗ trợ đầy đủ cho ES5 trong Opera 15
2014 ES5 Hỗ trợ đầy đủ cho ES5 trong tất cả các trình duyệt
2015 ES6 ECMAScript 6 đã được phát hành
2016 ES6 Hỗ trợ đầy đủ cho ES6 trong Chrome 51
2016 ES6 Hỗ trợ đầy đủ cho ES6 trong Opera 38
2016 ES6 Hỗ trợ đầy đủ cho ES6 trong Edge 14
2016 ES6 Hỗ trợ đầy đủ cho ES6 trong Safari 10
2015 ES6 Hỗ trợ đầy đủ cho ES6 trong Firefox 52
2018 ES6 Hỗ trợ đầy đủ cho ES6 trong tất cả các trình duyệt **

Ghi chú

* Internet Explorer 9 không hỗ trợ ES5 "sử dụng nghiêm ngặt".

** Internet Explorer 11 không hỗ trợ ES6.


Ủy ban kỹ thuật ECMA 39

Năm 1996, Netscape và Brendan Eich đã đưa JavaScript vào tổ chức tiêu chuẩn quốc tế ECMA, và một ủy ban kỹ thuật (TC39) được thành lập để phát triển ngôn ngữ này.

ECMA-262 Edition 1 được phát hành vào tháng 6 năm 1997.


Từ ES4 đến ES6

Khi ủy ban TC39 họp với nhau tại Oslo vào năm 2008, để thống nhất về ECMAScript 4, họ được chia thành 2 nhóm rất khác nhau:

Hội trại ECMAScript 3.1 :
Microsoft và Yahoo muốn nâng cấp dần từ ES3.

Hội trại ECMAScript 4 :
Adobe, Mozilla, Opera và Google, những người muốn nâng cấp ES4 lớn.

Ngày 13 tháng 8 năm 2008, Brendan Eich đã viết một email :

Không có gì bí mật khi cơ quan tiêu chuẩn JavaScript, Ủy ban kỹ thuật 39 của Ecma, đã bị chia tách trong hơn một năm, với một số thành viên ủng hộ ES4, phiên bản thứ tư chính của ECMA-262 và những người khác ủng hộ ES3.1 dựa trên ECMA-262 hiện có Đặc điểm kỹ thuật phiên bản 3 (ES3). Bây giờ, tôi rất vui khi được báo cáo, sự chia rẽ đã kết thúc.

Giải pháp là làm việc cùng nhau:

  • ECMAScript 4 được đổi tên thành ES5
  • ES5 nên là một bản nâng cấp gia tăng của ECMAScript 3.
  • Các tính năng của ECMAScript 4 nên được chọn trong các phiên bản sau.
  • TC39 nên phát triển một bản phát hành chính mới, có phạm vi lớn hơn ES5.

Bản phát hành mới theo kế hoạch (ES6) có tên mã là "Harmony" (Vì sự phân tách mà nó đã tạo ra?).

ES5 đã thành công rực rỡ. Nó được phát hành vào năm 2009 và tất cả các trình duyệt chính (bao gồm cả Internet Explorer) đều hoàn toàn tuân thủ vào tháng 7 năm 2013:

Chrome 23 IE10 / Edge Firefox 21 Safari 6 Opera 15
Nov 2012 Sep 2012 May 2013 Jul 2012 Jul 2013

ES6 cũng là một thành công lớn. Nó được phát hành vào năm 2015 và tất cả các trình duyệt chính đều hoàn toàn tuân thủ vào tháng 3 năm 2017:

Chrome 51 Edge 14 Firefox 52 Safari 10 Opera 38
May 2016 Aug 2016 Mar 2017 Sep 2016 Jun 2016