Ai đã phát triển JavaScript
Đến năm 1996, tầm quan trọng của JavaScript tăng lên nhiều đến mức nó được chuyển giao cho một tổ chức ngôn ngữ kịch bản tiêu chuẩn quốc tế có tên là ECMA (Hiệp hội các nhà sản xuất máy tính châu Âu), chịu trách nhiệm phát triển và duy trì ngôn ngữ này cho đến ngày nay. Kết quả là ngôn ngữ kịch bản chính thức được đặt tên là ‘ECMAScript’ (hoặc ‘ECMA-262’), tuy nhiên mọi người vẫn gọi nó là JavaScript. Quy trình tiêu chuẩn ECMA chạy theo chu kỳ - ECMAScript 2 được phát hành vào năm 1998 và ECMAScript 3 được phát hành vào năm 1999, đã phát triển thành JavaScript hiện đại ngày nay. Mặc dù Microsoft đã tiến hành triển khai một số đề xuất bằng ngôn ngữ JScript của họ, rõ ràng là Microsoft sẽ không triển khai JavaScript trong Internet Explorer .
Macromedia & Adobe JoinNăm 2005, Eich và Mozilla đã tham gia ECMA để hỗ trợ E4X (ECMA-357), dẫn đến sự hợp tác với Macromedia (được mua lại bởi . Mục tiêu của sự hợp tác này là chuẩn hóa những gì có trong AS3 và triển khai nó trong E4X in ActionScript 3. Mục tiêu của sự hợp tác này là chuẩn hóa những gì có trong AS3 và triển khai nó trong SpiderMonkey . Kết quả là Adobe đã phát hành Tamarin, một dự án mã nguồn mở có nguồn gốc từ AVM2Vai trò đang phát triển của nguồn mởĐồng thời, các cộng đồng nguồn mở và nhà phát triển cũng đang làm việc để cách mạng hóa JavaScript và những gì có thể được thực hiện với nó, đồng thời tác động của cộng đồng lên đến đỉnh điểm với . Bài viết này đã dẫn đến một làn sóng các nhà phát triển bị thu hút bởi JavaScript và các cộng đồng và thư viện nguồn mở xung quanh nó. Các thư viện mới được phát hành bao gồm jQuery, Jesse James Garrett mô tả một tập hợp các công nghệ mà JavaScript hỗ trợ làm xương sống và là nơi ông tạo ra thuật ngữ Ajax. Bài viết này đã dẫn đến một làn sóng các nhà phát triển bị thu hút bởi JavaScript và các cộng đồng và thư viện nguồn mở xung quanh nó. Các thư viện mới được phát hành bao gồm jQuery, Prototype và Dojo. Lợi thế của Ajax đã đưa JavaScript trở thành tâm điểm chú ý và thu hút nhiều sự chú ý hơn từ các nhà lập trình chuyên nghiệp. Kết quả là sự phổ biến của các khung và thư viện toàn diện, các phương pháp lập trình JavaScript được cải thiện và việc sử dụng JavaScript bên ngoài trình duyệt web ngày càng tăng, thể hiện qua sự phổ biến của các nền tảng JavaScript phía máy chủ. Bước tiếp theo trong lịch sử JavaScript diễn ra vào năm 2008, khi nhiều bên liên quan gặp nhau tại Oslo, dẫn đến thỏa thuận hướng ngôn ngữ này tới việc sử dụng một chương trình nghị sự được gọi là Hài hòa(EcmaScript 6)Tạo một thư viện tiêu chuẩn chungVào tháng 1 năm 2009, dự án CommonJS được thành lập với mục tiêu chỉ định một thư viện tiêu chuẩn chung chủ yếu để phát triển JavaScript bên ngoài trình duyệt. Với sự gia tăng của các ứng dụng trang đơn và các trang web nặng về JavaScript, nó ngày càng được sử dụng làm mục tiêu biên dịch cho các trình biên dịch mã nguồn đến mã nguồn từ cả hai bên. . Đến năm 2016, thống kê cho thấy khoảng 92% tất cả các trang web sử dụng JavaScript - bao gồm một số trang web lớn nhất thế giới như Google và Facebook. Và nhờ có JavaScript, các yếu tố tạo nên những trang web như vậy ngày nay là có thể. Ví dụ: nếu không có JavaScript, chúng tôi sẽ không có các thông báo theo thời gian thực mà ngày nay chúng tôi đã quen nhìn thấyXem trên di động ? . Show
JavaScript hôm nayNgày nay, JavaScript vẫn có ở khắp mọi nơi - đó là ngôn ngữ kịch bản phía máy khách được sử dụng phổ biến nhất. JavaScript được viết vào tài liệu HTML và cho phép tương tác với các trang web theo nhiều cách độc đáo. Ví dụ: nhờ JavaScript, chúng tôi có thể tự động sắp xếp các cuộc hẹn và chơi trò chơi trực tuyến. Hơn nữa, những phát triển mới, chẳng hạn như Node. js, cho phép sử dụng JavaScript ở phía máy chủ trong khi API , chẳng hạn như HTML5, cho phép kiểm soát người dùng . media and other device features. Lịch sử JavaScript rất phức tạp nhưng nó chưa kết thúc. Đây là nơi nó có thể trở nên nguy hiểm (có khả năng) - với sự mở rộng mạnh mẽ của JavaScript, tạo ra một sân chơi mới cho tin tặc. Các phương pháp hay nhất về mã hóa an toàn là điều cần thiết cho tất cả các ngôn ngữ lập trình và phát triển - tìm hiểu thêm về mã hóa an toàn cho JavaScript.JavaScript được cho là một trong những ngôn ngữ quan trọng nhất hiện nay. Sự phát triển của web đã chiếm vị trí của JavaScript mà nó chưa bao giờ được hình thành. Chúng ta hãy xem JavaScript đã phát triển như thế nào trong lịch sử ngắn ngủi của nó và hướng đi của nó. đọc tiếp
Tất cả bắt đầu vào những năm 90Tất cả xảy ra trong sáu tháng từ tháng 5 đến tháng 12 năm 1995. Netscape Communications Corporation đã có một sự hiện diện mạnh mẽ trong web trẻ. Trình duyệt của nó, Netscape Communicator, đã thu hút được sự chú ý khi trở thành đối thủ cạnh tranh với NCSA Mosaic, trình duyệt web phổ biến đầu tiên. Netscape được thành lập bởi chính những người đã tham gia phát triển Mosaic vào đầu những năm 90, và giờ đây, với tiền bạc và sự độc lập, họ có quyền tự do cần thiết để tìm kiếm những cách tiếp theo để mở rộng web. Và đó chính xác là thứ đã khai sinh ra JavaScript Marc Andreessen, người sáng lập Netscape Communications và là thành viên của nhóm Mosaic cũ, có tầm nhìn rằng web cần một cách để trở nên năng động hơn. Hoạt ảnh, tương tác và các hình thức tự động hóa nhỏ khác sẽ là một phần của web trong tương lai. Vì vậy, web cần một ngôn ngữ kịch bản nhỏ có thể tương tác với DOM (ngôn ngữ này chưa được thiết lập sẵn như hiện tại). Tuy nhiên, và đây là một lời kêu gọi chiến lược quan trọng vào thời điểm đó, ngôn ngữ kịch bản này không nên hướng đến các nhà phát triển lớn và những người có kinh nghiệm trong lĩnh vực công nghệ phần mềm. Java cũng đang phát triển và các ứng dụng Java sẽ sớm trở thành hiện thực. Vì vậy, ngôn ngữ kịch bản cho web sẽ cần phục vụ cho một loại đối tượng khác. nhà thiết kế. Thật vậy, web là tĩnh. HTML vẫn còn non trẻ và đủ đơn giản để những người không phải là nhà phát triển tiếp thu. Vì vậy, bất cứ điều gì là một phần của trình duyệt để làm cho web năng động hơn đều có thể truy cập được đối với những người không phải là lập trình viên. Và thế là ý tưởng về Mocha ra đời. Mocha đã trở thành một ngôn ngữ kịch bản cho web. Đơn giản, năng động và dễ tiếp cận đối với những người không phải là nhà phát triển Đây là lúc Brendan Eich, cha đẻ của JavaScript, xuất hiện. Eich đã được Netscape Communications ký hợp đồng để phát triển một "Sơ đồ cho trình duyệt". Scheme là một phương ngữ Lisp và do đó, có rất ít trọng lượng cú pháp. Đó là năng động, mạnh mẽ và chức năng trong tự nhiên. Web cần một cái gì đó thuộc loại. dễ nắm bắt về mặt cú pháp; . Eich nhìn thấy cơ hội làm việc gì đó mà anh ấy thích và tham gia lực lượng Hiện tại có rất nhiều áp lực phải đưa ra một nguyên mẫu hoạt động càng sớm càng tốt. Ngôn ngữ Java, tên là Oak vào thời điểm đó, đang bắt đầu có sức hút. Sun Microsystems đang thúc đẩy mạnh mẽ nó và Netscape Communications chuẩn bị chốt một thỏa thuận với họ để cung cấp Java trong trình duyệt. Vậy tại sao Mocha (đây là tên ban đầu của JavaScript)? . người viết kịch bản, nghiệp dư, nhà thiết kế. Java quá lớn đối với doanh nghiệp cho vai trò này. Vì vậy, ý tưởng là làm cho Java có sẵn cho những người viết thành phần lớn, chuyên nghiệp; . Nói cách khác, Mocha được coi là người bạn đồng hành viết kịch bản cho Java, theo cách tương tự như mối quan hệ giữa C/C++ và Visual Basic trên nền tảng Windows
Có rất nhiều áp lực nội bộ để chọn một ngôn ngữ càng sớm càng tốt. Bản thân Python, Tcl, Scheme đều là những ứng cử viên khả dĩ. Vì vậy, Eich đã phải làm việc nhanh chóng. Anh ấy có hai lợi thế so với các lựa chọn thay thế. tự do chọn bộ tính năng phù hợp và đường dây trực tiếp tới những người thực hiện cuộc gọi. Thật không may, anh ấy cũng có một bất lợi lớn. không có thời gian. Rất nhiều quyết định quan trọng phải được đưa ra và có rất ít thời gian để thực hiện chúng. JavaScript, một. k. a. Mocha, ra đời trong bối cảnh này. Chỉ trong vài tuần, một nguyên mẫu hoạt động đã hoạt động và do đó, nó đã được tích hợp vào Netscape Communicator Ý nghĩa của một Đề án cho trình duyệt đã biến thành một thứ gì đó rất khác. Áp lực hoàn tất thỏa thuận với Sun và biến Mocha trở thành người bạn đồng hành viết kịch bản cho Java đã buộc Eich phải ra tay. Một cú pháp giống như Java là bắt buộc và ngữ nghĩa quen thuộc cho nhiều thành ngữ phổ biến cũng được áp dụng. Vì vậy, Mocha không giống Scheme chút nào. Nó trông giống như một Java năng động, nhưng bên dưới nó là một con thú rất khác. đứa con yêu sớm của Scheme và Self, với ngoại hình Java Nguyên mẫu của Mocha được tích hợp vào Netscape Communicator vào tháng 5 năm 1995. Trong thời gian ngắn, nó được đổi tên thành LiveScript. Hiện tại, từ "trực tiếp" thuận tiện theo quan điểm tiếp thị. Tháng 12 năm 1995, Netscape Communications và Sun chốt thỏa thuận. Mocha/LiveScript sẽ được đổi tên thành JavaScript và nó sẽ được trình bày dưới dạng ngôn ngữ kịch bản cho các tác vụ phía máy khách nhỏ trong trình duyệt, trong khi Java sẽ được quảng bá như một công cụ chuyên nghiệp, lớn hơn để phát triển các thành phần web phong phú Phiên bản JavaScript đầu tiên này đã đặt nền móng cho nhiều đặc điểm mà ngôn ngữ này được biết đến ngày nay. Đặc biệt, mô hình đối tượng và các tính năng chức năng của nó đã có mặt trong phiên bản đầu tiên này
triển khai khác nhauKhi Sun và Netscape chốt thỏa thuận đổi tên Mocha/LiveScript thành JavaScript, một câu hỏi lớn đã được đặt ra. điều gì sẽ xảy ra với các triển khai thay thế? . Ngay từ những ngày đầu tiên, JavaScript đã tạo ra sự khác biệt đáng kể trong trải nghiệm người dùng đến mức các trình duyệt cạnh tranh không có lựa chọn nào khác ngoài việc đưa ra một giải pháp hiệu quả, triển khai JavaScript hiệu quả. Hiện tại (và trong một thời gian rất dài), các tiêu chuẩn web không mạnh. Vì vậy, Microsoft đã triển khai phiên bản JavaScript của riêng họ, được gọi là JScript. Bỏ tên "Java" để tránh các sự cố thương hiệu có thể xảy ra. Tuy nhiên, JScript không chỉ khác ở cái tên. Những khác biệt nhỏ trong quá trình triển khai, đặc biệt là liên quan đến một số chức năng DOM nhất định, đã gây ra những gợn sóng vẫn còn tồn tại trong nhiều năm tới trong tương lai. Các cuộc chiến JavaScript diễn ra ở nhiều mặt trận hơn là chỉ tên và mốc thời gian và nhiều điều kỳ quặc của nó chỉ là vết thương của những cuộc chiến này. Phiên bản đầu tiên của JAVAScript được bao gồm trong Internet Explorer 3. 0, phát hành vào tháng 8 năm 1996 Việc triển khai JavaScript của Netscape cũng nhận được một tên nội bộ. Phiên bản được phát hành với Netscape Navigator 2. 0 được gọi là Mocha. Vào mùa thu năm 1996, Eich đã viết lại hầu hết Mocha thành một triển khai sạch hơn để trả khoản nợ kỹ thuật do vội vã bán nó ra khỏi cửa. Phiên bản mới này của công cụ JavaScript của Netscape được gọi là SpiderMonkey. SpiderMonkey vẫn là tên của công cụ JavaScript được tìm thấy trong Firefox, cháu trai của Netscape Navigator Trong vài năm, JScript và SpiderMonkey là những công cụ JavaScript hàng đầu. Các tính năng do cả hai triển khai, không phải lúc nào cũng tương thích, sẽ xác định trang web sẽ trở thành gì trong những năm tiếp theo Các tính năng thiết kế chínhMặc dù JavaScript được sinh ra một cách vội vàng, nhưng một số tính năng mạnh mẽ đã là một phần của nó ngay từ đầu. Các tính năng này sẽ xác định JavaScript là một ngôn ngữ và sẽ cho phép nó phát triển vượt trội so với khu vườn có tường bao quanh bất chấp những điều kỳ quặc của nó
Cú pháp giống như JavaMặc dù giữ cú pháp gần với Java không phải là ý tưởng ban đầu đằng sau JavaScript, nhưng các lực lượng tiếp thị đã thay đổi điều đó. Nhìn lại, mặc dù một cú pháp khác có thể thuận tiện hơn cho một số tính năng nhất định, nhưng không thể phủ nhận rằng một cú pháp quen thuộc đã giúp JavaScript dễ dàng đạt được thành công So sánh ví dụ Java này
Đối với ví dụ JavaScript (hiện đại) này
Chức năng như các đối tượng hạng nhấtTrong JavaScript, các hàm chỉ đơn giản là một loại đối tượng nữa. Chúng có thể được truyền xung quanh giống như bất kỳ phần tử nào khác. Chúng có thể được liên kết với các biến và trong phiên bản JavaScript mới hơn, chúng thậm chí có thể bị ném dưới dạng ngoại lệ. Tính năng này là kết quả có thể xảy ra do ảnh hưởng mạnh mẽ của Scheme trong quá trình phát triển JavaScript
Bằng cách tạo các đối tượng hạng nhất của chức năng, có thể có một số mẫu lập trình chức năng nhất định. Chẳng hạn, các phiên bản JavaScript sau này sử dụng các mẫu chức năng nhất định
Các mẫu này đã được nhiều thư viện khai thác thành công lớn, chẳng hạn như gạch dưới và bất biến. js Mô hình đối tượng dựa trên nguyên mẫuMặc dù mô hình đối tượng dựa trên nguyên mẫu đã được phổ biến bởi JavaScript, nhưng lần đầu tiên nó được giới thiệu bằng ngôn ngữ Self. Eich rất thích mô hình này và nó đủ mạnh để mô hình hóa cách tiếp cận truyền thống hơn của các ngôn ngữ dựa trên Simula như Java hoặc C++. Trên thực tế, các lớp, như được triển khai trong phiên bản JavaScript sau này, không gì khác hơn là đường cú pháp trên hệ thống nguyên mẫu Một trong những mục tiêu thiết kế của Self, ngôn ngữ tạo cảm hứng cho các nguyên mẫu của JavaScript, là để tránh các vấn đề của các đối tượng kiểu Simula. Đặc biệt, sự phân đôi giữa các lớp và các thể hiện được coi là nguyên nhân của nhiều vấn đề cố hữu trong cách tiếp cận của Simula. Người ta lập luận rằng khi các lớp cung cấp một nguyên mẫu nhất định cho các thể hiện đối tượng, khi mã phát triển và ngày càng lớn hơn, thì việc điều chỉnh các lớp cơ sở đó theo các yêu cầu mới không mong muốn ngày càng khó hơn. Bằng cách biến các thể hiện thành nguyên mẫu mà từ đó các đối tượng mới có thể được xây dựng, hạn chế này đã được loại bỏ. Vì vậy, khái niệm về nguyên mẫu. một phiên bản lấp đầy khoảng trống của một phiên bản mới bằng cách cung cấp hành vi của chính nó. Nếu một nguyên mẫu được coi là không phù hợp với một đối tượng mới, nó có thể được sao chép và sửa đổi một cách đơn giản mà không ảnh hưởng đến tất cả các phiên bản con khác. Điều này được cho là khó thực hiện hơn trong cách tiếp cận dựa trên lớp (tôi. e. sửa đổi các lớp cơ sở)
Sức mạnh của các nguyên mẫu làm cho JavaScript trở nên cực kỳ linh hoạt, thúc đẩy sự phát triển của nhiều thư viện với các mô hình đối tượng của riêng chúng. Một thư viện phổ biến có tên là Stampit sử dụng rất nhiều hệ thống nguyên mẫu để mở rộng và thao tác các đối tượng theo những cách không thể thực hiện được bằng cách sử dụng phương pháp dựa trên lớp truyền thống Các nguyên mẫu đã làm cho JavaScript có vẻ đơn giản, trao quyền cho các tác giả thư viện Một Quirk lớn. Nguyên thủy so với đối tượngCó lẽ một trong những sai lầm lớn nhất trong quá trình phát triển vội vã của JavaScript là làm cho một số đối tượng hoạt động giống nhau có các kiểu khác nhau. Chẳng hạn, kiểu của một chuỗi ký tự ( 1) không giống với kiểu của đối tượng 2 ( 3). Điều này đôi khi thực thi các lỗi đánh máy không cần thiết và khó hiểu________số 8Nhưng đây mới chỉ là khởi đầu trong lịch sử JavaScript. Sự phát triển vội vã của nó khiến một số lỗi thiết kế nhất định trở thành một khả năng quá thực tế. Tuy nhiên, những lợi thế của việc có một ngôn ngữ cho web động không thể bị trì hoãn và lịch sử đã tiếp quản
Một sự nhìn lại và hồi tưởng về quá khứ. Nhìn vào Netscape Navigator 2. 0 và 3. 0Bản phát hành công khai đầu tiên của JavaScript được tích hợp trong Netscape Navigator 2. 0, phát hành năm 1995. Nhờ những điều kỳ diệu của các trang web ảo hóa và phần mềm từ bỏ, chúng ta có thể làm sống lại những khoảnh khắc đó ngày hôm nay Thật không may, nhiều tính năng cơ bản của JavaScript không hoạt động vào thời điểm đó. Hàm ẩn danh và chuỗi nguyên mẫu, hai tính năng mạnh mẽ nhất không hoạt động như ngày nay. Tuy nhiên, các tính năng này đã là một phần của thiết kế ngôn ngữ và sẽ được triển khai chính xác trong những năm tiếp theo. Cần lưu ý rằng trình thông dịch JavaScript trong bản phát hành này được xem xét ở trạng thái alpha May thay, một năm sau, Netscape Navigator 3. 0, phát hành năm 1996, đã tạo nên sự khác biệt lớn Lưu ý cách lỗi cung cấp cho chúng tôi thêm thông tin về những gì đang xảy ra. Điều này chúng ta hãy suy đoán trình thông dịch đang xử lý thuộc tính 4 theo một cách đặc biệt. Vì vậy, chúng tôi cố gắng thay thế đối tượng bằng một phiên bản 5 cơ bản mà sau đó chúng tôi sửa đổi. Và thì đấy, nó hoạt động. Phần nào, ít nhất. Bài tập bên trong hàm 6 dường như không làm gì cả. Rõ ràng là còn rất nhiều việc phải làm. Tuy nhiên, JavaScript ở trạng thái có thể sử dụng được cho nhiều tác vụ và mức độ phổ biến của nó tiếp tục tăngCác tính năng như biểu thức chính quy, JSON và ngoại lệ vẫn chưa khả dụng. JavaScript sẽ phát triển vượt bậc trong những năm tiếp theo ECMAScript. JavaScript như một tiêu chuẩnThay đổi lớn đầu tiên đối với JavaScript sau khi phát hành ra công chúng là tiêu chuẩn hóa ECMA. ECMA là một hiệp hội ngành được thành lập vào năm 1961 chỉ liên quan đến tiêu chuẩn hóa hệ thống thông tin và truyền thông Công việc về tiêu chuẩn cho JavaScript được bắt đầu vào tháng 11 năm 1996. Nhận dạng tiêu chuẩn là ECMA-262 và ủy ban phụ trách là TC-39. Vào thời điểm đó, JavaScript đã là một yếu tố phổ biến trong nhiều trang. Thông cáo báo chí từ năm 1996 này đặt số lượng trang JavaScript là 300.000
Tiêu chuẩn hóa là một bước quan trọng đối với một ngôn ngữ non trẻ như vậy, nhưng dù sao đó cũng là một lời kêu gọi tuyệt vời. Nó đã mở ra JavaScript cho nhiều đối tượng hơn và có tiếng nói của những người triển khai tiềm năng khác trong quá trình phát triển của ngôn ngữ. Nó cũng phục vụ mục đích kiểm tra những người thực hiện khác. Trước đó, người ta sợ rằng Microsoft hoặc những người khác sẽ đi quá xa so với cách triển khai mặc định và gây ra sự phân mảnh. Vì lý do nhãn hiệu, ủy ban ECMA không thể sử dụng JavaScript làm tên. Các lựa chọn thay thế cũng không được nhiều người yêu thích, vì vậy sau một số cuộc thảo luận, người ta đã quyết định rằng ngôn ngữ được mô tả theo tiêu chuẩn sẽ được gọi là ECMAScript. Ngày nay, JavaScript chỉ là tên thương mại của ECMAScript ECMAScript 1 & 2. Trên con đường chuẩn hóaTiêu chuẩn ECMAScript đầu tiên dựa trên phiên bản JavaScript được phát hành với Netscape Navigator 4 và vẫn thiếu các tính năng quan trọng như biểu thức chính quy, JSON, ngoại lệ và các phương thức quan trọng cho các đối tượng dựng sẵn. Tuy nhiên, nó hoạt động tốt hơn nhiều trong trình duyệt. JavaScript ngày càng trở nên tốt hơn. Phiên bản 1 được phát hành vào tháng 6 năm 1997 Lưu ý cách kiểm tra nguyên mẫu và chức năng đơn giản của chúng tôi hiện hoạt động chính xác. Rất nhiều công việc đã được thực hiện trong Netscape 4 và JavaScript đã được hưởng lợi rất nhiều từ nó. Ví dụ của chúng tôi bây giờ về cơ bản chạy giống hệt với bất kỳ trình duyệt hiện tại nào. Đây là một trạng thái tuyệt vời cho lần phát hành đầu tiên dưới dạng tiêu chuẩn Phiên bản thứ hai của tiêu chuẩn, ECMAScript 2, đã được phát hành để khắc phục sự không nhất quán giữa ECMA và tiêu chuẩn ISO cho JavaScript (ISO/IEC 16262), vì vậy không có thay đổi nào đối với ngôn ngữ trong phiên bản này. Nó được phát hành vào tháng 6 năm 1998 Một điểm thú vị của phiên bản JavaScript này là các lỗi không được phát hiện tại thời điểm biên dịch (thường không được xác định) để lại cho trình thông dịch tùy ý phải làm gì với chúng. Điều này là do các ngoại lệ chưa phải là một phần của ngôn ngữ ECMAScript 3. Những thay đổi lớn đầu tiênCông việc vẫn tiếp tục sau ECMAScript 2 và những thay đổi lớn đầu tiên đối với ngôn ngữ đã xuất hiện. Phiên bản này đưa vào
ECMAScript 3 được phát hành vào tháng 12 năm 1999 Phiên bản ECMAScript này lan truyền rất xa. Nó được hỗ trợ bởi tất cả các trình duyệt chính vào thời điểm đó và tiếp tục được hỗ trợ nhiều năm sau đó. Thậm chí ngày nay, một số bộ chuyển đổi có thể nhắm mục tiêu phiên bản ECMAScript này khi tạo đầu ra. Điều này làm cho ECMAScript 3 trở thành mục tiêu cơ bản cho nhiều thư viện, ngay cả khi các phiên bản sau của tiêu chuẩn được phát hành Mặc dù JavaScript được sử dụng nhiều hơn bao giờ hết, nhưng nó vẫn chủ yếu là ngôn ngữ phía máy khách. Nhiều tính năng mới của nó đã đưa nó đến gần hơn với việc thoát ra khỏi cái lồng đó Netscape Navigator 6, phát hành vào tháng 11 năm 2000 và là một thay đổi lớn so với các phiên bản trước, hỗ trợ ECMAScript 3. Gần một năm rưỡi sau, Firefox, một trình duyệt tinh gọn dựa trên cơ sở mã cho Netscape Navigator, cũng được phát hành hỗ trợ ECMAScript 3. Các trình duyệt này, cùng với Internet Explorer tiếp tục thúc đẩy sự phát triển của JavaScript Sự ra đời của AJAXAJAX, JavaScript và XML không đồng bộ, là một kỹ thuật ra đời trong những năm của ECMAScript 3. Mặc dù nó không phải là một phần của tiêu chuẩn, nhưng Microsoft đã triển khai một số tiện ích mở rộng nhất định cho JavaScript cho trình duyệt Internet Explorer 5 của mình. Một trong số đó là hàm 9 (ở dạng điều khiển XMLHTTP ActiveX). Chức năng này cho phép trình duyệt thực hiện yêu cầu HTTP không đồng bộ đối với máy chủ, do đó cho phép các trang được cập nhật nhanh chóng. Mặc dù thuật ngữ AJAX không được đặt ra cho đến nhiều năm sau, nhưng kỹ thuật này đã được sử dụng khá nhiều
9 đã chứng tỏ là một thành công và nhiều năm sau được tích hợp vào tiêu chuẩn riêng của nó (như một phần của nhóm WHATWG và W3C)Sự phát triển của các tính năng này, một trình triển khai mang lại điều gì đó thú vị cho ngôn ngữ và triển khai nó trong trình duyệt của nó, vẫn là cách JavaScript và các tiêu chuẩn web liên quan như HTML và CSS tiếp tục phát triển. Tuy nhiên, vào thời điểm đó, có rất ít thông tin liên lạc giữa các bên, dẫn đến sự chậm trễ và phân mảnh. Công bằng mà nói, việc phát triển JavaScript ngày nay có tổ chức hơn nhiều, với các quy trình trình bày đề xuất của bất kỳ bên quan tâm nào Chơi với Netscape Navigator 6Bản phát hành này hỗ trợ các trường hợp ngoại lệ, các phiên bản trước của showstopper chính bị ảnh hưởng khi cố gắng truy cập Google. Thật đáng kinh ngạc, cố gắng truy cập Google trong phiên bản này dẫn đến một trang hoạt động, có thể xem được, thậm chí cho đến tận ngày nay. Ngược lại, chúng tôi đã cố gắng truy cập Google bằng Netscape Navigator 4 và chúng tôi gặp phải vấn đề thiếu ngoại lệ, hiển thị không đầy đủ và bố cục xấu. Mọi thứ đang phát triển nhanh chóng đối với web, thậm chí vào thời điểm đó Chơi với Internet Explorer 5Internet Explorer 5 cũng có khả năng hiển thị phiên bản hiện tại của Google. Tuy nhiên, ai cũng biết rằng có nhiều khác biệt trong việc triển khai một số tính năng nhất định giữa Internet Explorer và các trình duyệt khác. Những khác biệt này đã cản trở web trong nhiều năm và là nguyên nhân gây thất vọng cho các nhà phát triển web trong một thời gian dài, những người thường phải triển khai các trường hợp đặc biệt cho người dùng Internet Explorer Trên thực tế, để truy cập đối tượng 9 trong Internet Explorer 5 và 6, cần phải sử dụng ActiveX. Các trình duyệt khác đã triển khai nó như một đối tượng gốc 7Có thể cho rằng chính Internet Explorer 5 đã đưa ý tưởng này lên bàn đầu tiên. Mãi đến phiên bản 7, Microsoft mới bắt đầu tuân theo các tiêu chuẩn và sự đồng thuận chặt chẽ hơn. Một số trang web công ty lỗi thời vẫn yêu cầu các phiên bản Internet Explorer cũ để chạy chính xác ECMAScript 3. 1 và 4. Những năm đấu tranhThật không may, những năm tiếp theo không tốt cho sự phát triển của JavaScript. Ngay khi bắt đầu làm việc trên ECMAScript 4, sự khác biệt lớn trong ủy ban bắt đầu xuất hiện. Có một nhóm người cho rằng JavaScript cần các tính năng để trở thành ngôn ngữ mạnh hơn cho việc phát triển ứng dụng quy mô lớn. Nhóm này đã đề xuất nhiều tính năng có phạm vi lớn và thay đổi. Những người khác nghĩ rằng đây không phải là khóa học thích hợp cho JavaScript. Việc thiếu sự đồng thuận và sự phức tạp của một số tính năng được đề xuất đã đẩy việc phát hành ECMAScript 4 ngày càng xa hơn Công việc trên ECMAScript 4 đã bắt đầu ngay khi phiên bản 3 ra mắt vào năm 1999. Nhiều tính năng thú vị đã được thảo luận nội bộ tại Netscape. Tuy nhiên, sự quan tâm đến việc triển khai chúng đã giảm dần và hoạt động trên phiên bản ECMAScript mới đã dừng lại sau một thời gian vào năm 2003. Một báo cáo tạm thời đã được phát hành và một số nhà triển khai, chẳng hạn như Adobe (ActionScript) và Microsoft (JScript. NET), đã sử dụng nó làm cơ sở cho các công cụ của họ. Năm 2005, tác động của AJAX và 9 một lần nữa khơi dậy sự quan tâm đến phiên bản JavaScript mới và TC-39 tiếp tục hoạt động. Nhiều năm trôi qua và bộ tính năng ngày càng lớn hơn. Ở đỉnh cao phát triển, ECMAScript 4 có các tính năng như
Dự thảo ECMAScript 4 mô tả phiên bản mới này nhằm mục đích lập trình trên quy mô lớn. Nếu bạn đã quen thuộc với ECMAScript 6/2015, bạn sẽ nhận thấy rằng nhiều tính năng từ ECMAScript 4 đã được giới thiệu lại trong đó
Một phần lịch sử thú vị là bảng tính Google Docs sau đây, hiển thị trạng thái triển khai của một số công cụ JavaScript và cuộc thảo luận của các bên liên quan trong đó Ủy ban đang phát triển ECMAScript 4 được thành lập bởi Adobe, Mozilla, Opera (với tư cách không chính thức) và Microsoft. Yahoo tham gia cuộc chơi vì hầu hết các tiêu chuẩn và tính năng đã được quyết định. Doug Crockford, một nhà phát triển JavaScript có tầm ảnh hưởng, là người được Yahoo cử đến để thực hiện việc này. Anh bày tỏ mối quan ngại của mình để phản đối mạnh mẽ nhiều thay đổi được đề xuất cho ECMAScript 4. Anh nhận được sự ủng hộ mạnh mẽ từ đại diện Microsoft. Theo lời của chính Crockford
Điều bắt đầu là sự nghi ngờ, nhanh chóng trở thành lập trường mạnh mẽ chống lại JavaScript. Microsoft từ chối chấp nhận bất kỳ phần nào của ECMAScript 4 và sẵn sàng thực hiện mọi hành động cần thiết để ngăn tiêu chuẩn này được phê duyệt (thậm chí cả các hành động pháp lý). May mắn thay, những người trong ủy ban đã quản lý để ngăn chặn một cuộc đấu tranh pháp lý. Tuy nhiên, việc thiếu đồng thuận đã ngăn ECMAScript 4 tiến lên một cách hiệu quả
Crockford đã thúc đẩy ý tưởng đưa ra một bộ tính năng đơn giản hơn, giảm bớt cho tiêu chuẩn mới, điều mà tất cả đều có thể đồng ý. không có cú pháp mới, chỉ có những cải tiến thực tế được tạo ra từ kinh nghiệm sử dụng ngôn ngữ. Đề xuất này được gọi là ECMAScript 3. 1 Trong một thời gian, cả hai tiêu chuẩn cùng tồn tại và hai ủy ban không chính thức đã được thành lập. Tuy nhiên, ECMAScript 4 quá phức tạp để hoàn thành khi đối mặt với sự bất hòa. ECMAScript 3. 1 đơn giản hơn nhiều, và bất chấp sự chật vật tại ECMA, nó đã được hoàn thành Sự kết thúc của ECMAScript 4 đến vào năm 2008, khi Eich gửi một email với bản tóm tắt điều hành của một cuộc họp ở Oslo, trong đó trình bày chi tiết về con đường phía trước của ECMAScript và tương lai của các phiên bản 3. 1 và 4 Kết luận từ cuộc họp đó là
Nói chung, ECMAScript 4 đã mất gần 8 năm phát triển và cuối cùng đã bị loại bỏ. Một bài học khó khăn cho tất cả những người đã tham gia Từ "Hòa hợp" xuất hiện trong kết luận trên. Đây là tên dự án cho các tiện ích mở rộng trong tương lai cho JavaScript đã nhận được. Harmony sẽ là giải pháp thay thế mà mọi người có thể đồng ý. Sau khi phát hành ECMAScript 3. 1 (ở dạng phiên bản 5, như chúng ta sẽ thấy bên dưới), ECMAScript Harmony đã trở thành nơi thảo luận tất cả các ý tưởng mới về JavaScript Tập lệnh hành độngActionScript là ngôn ngữ lập trình dựa trên bản nháp ban đầu cho ECMAScript 4. Adobe đã triển khai nó như một phần của bộ ứng dụng Flash và là ngôn ngữ kịch bản duy nhất được nó hỗ trợ. Điều này khiến Adobe có lập trường ủng hộ mạnh mẽ ECMAScript 4, thậm chí còn phát hành công cụ của họ dưới dạng mã nguồn mở (Tamarin) với hy vọng tăng tốc độ áp dụng ECMAScript 4. Mike Chambers, một nhân viên của Adobe, đã tiết lộ một điều thú vị về vấn đề này.
Các nhà phát triển ActionScript hy vọng rằng sự đổi mới trong ActionScript sẽ thúc đẩy các tính năng trong ECMAScript. Thật không may, điều này đã không bao giờ xảy ra và những gì sau đó đến với ECMAScript 2015 theo nhiều cách không tương thích với ActionScript Một số người coi động thái này là một nỗ lực của Microsoft nhằm duy trì quyền kiểm soát ngôn ngữ và việc triển khai. Công cụ khả thi duy nhất cho ECMAScript 4 vào lúc này là Tamarin, vì vậy Microsoft, hiện có 80% thị phần trình duyệt, có thể tiếp tục sử dụng công cụ (và tiện ích mở rộng) của riêng mình mà không phải trả chi phí chuyển sang giải pháp thay thế của đối thủ cạnh tranh hoặc mất thời gian . Những người khác chỉ đơn giản nói rằng những phản đối của Microsoft chỉ mang tính kỹ thuật, giống như những phản đối của Yahoo. Công cụ của Microsoft, JScript, tại thời điểm này có nhiều điểm khác biệt với các triển khai khác. Một số người coi đây là một cách để bí mật kiểm soát ngôn ngữ ActionScript ngày nay vẫn là ngôn ngữ dành cho Flash, với sự ra đời của HTML5 đã dần trở nên phổ biến ActionScript vẫn là giao diện gần nhất với những gì ECMAScript 4 có thể có nếu nó được triển khai bởi các công cụ JavaScript phổ biến 9E4X?E4X là tên một tiện ích mở rộng cho ECMAScript đã nhận được. Nó được phát hành trong những năm phát triển ECMAScript 4 (2004), vì vậy biệt danh E4X đã được sử dụng. Tên thật của nó là ECMAScript cho XML và được chuẩn hóa thành ECMA-357. E4X mở rộng ECMAScript để hỗ trợ xử lý gốc và phân tích cú pháp nội dung XML. XML được coi là kiểu dữ liệu gốc trong E4X. Nó đã được các công cụ JavaScript lớn, chẳng hạn như SpiderMonkey, sử dụng ban đầu, nhưng sau đó nó đã bị loại bỏ do không được sử dụng. Nó đã bị xóa khỏi Firefox trong phiên bản 21 Ngoài số "4" trong tên của nó, E4X không liên quan nhiều đến ECMAScript 4 Một ví dụ về những gì E4X đã sử dụng để mang lên bàn 0Có thể cho rằng, các định dạng dữ liệu khác (chẳng hạn như JSON) đã được chấp nhận rộng rãi hơn trong cộng đồng JavaScript, vì vậy E4X đến và đi mà không gặp nhiều trở ngại ECMAScript 5. Sự tái sinh của JavaScriptSau một thời gian dài vật lộn với ECMAScript 4, từ năm 2008 trở đi, cộng đồng tập trung vào ECMAScript 3. 1. ECMAScript 4 đã bị loại bỏ. Trong năm 2009 ECMAScript 3. 1 đã được hoàn thành và ký tắt bởi tất cả các bên liên quan. ECMAScript 4 đã được công nhận là một biến thể cụ thể của ECMAScript ngay cả khi không có bất kỳ bản phát hành thích hợp nào, vì vậy, ủy ban đã quyết định đổi tên ECMAScript 3. 1 đến ECMAScript 5 để tránh nhầm lẫn ECMAScript 5 đã trở thành một trong những phiên bản JavaScript được hỗ trợ nhiều nhất và cũng trở thành mục tiêu biên dịch của nhiều bộ chuyển mã. ECMAScript 5 được hỗ trợ hoàn toàn bởi Firefox 4 (2011), Chrome 19 (2012), Safari 6 (2012), Opera 12. 10 (2012) và Internet Explorer 10 (2012) ECMAScript 5 là một bản cập nhật khá khiêm tốn cho ECMAScript 3, nó bao gồm
Không có thay đổi nào cần thay đổi cú pháp. Getters và setters đã được hỗ trợ không chính thức bởi nhiều trình duyệt khác nhau vào thời điểm đó. Các phương pháp 5 mới cải thiện "việc lập trình trên quy mô lớn" bằng cách cung cấp cho các lập trình viên nhiều công cụ hơn để đảm bảo các giá trị bất biến nhất định được thực thi ( 0, 1, 2). Chế độ nghiêm ngặt cũng trở thành một công cụ mạnh mẽ trong lĩnh vực này bằng cách ngăn chặn nhiều nguồn lỗi phổ biến. Các phương pháp 0 bổ sung cải thiện các mẫu chức năng nhất định ( 5, 7, 6, 3, 4). Sự thay đổi lớn khác là JSON. định dạng dữ liệu lấy cảm hứng từ JavaScript hiện được hỗ trợ thông qua 9 và 70. Những thay đổi khác tạo ra những cải tiến nhỏ trong một số lĩnh vực dựa trên kinh nghiệm thực tế. Nhìn chung, ECMAScript 5 là một cải tiến khiêm tốn giúp JavaScript trở thành ngôn ngữ dễ sử dụng hơn, cho cả tập lệnh nhỏ và dự án lớn hơn. Tuy nhiên, vẫn có nhiều ý tưởng hay từ ECMAScript 4 đã bị loại bỏ và sẽ thấy sự trở lại thông qua đề xuất ECMAScript HarmonyECMAScript 5 đã thấy một lần lặp lại khác vào năm 2011 dưới dạng ECMAScript 5. 1. Bản phát hành này đã làm rõ một số điểm mơ hồ trong tiêu chuẩn nhưng không cung cấp bất kỳ tính năng mới nào. Tất cả các tính năng mới đã được lên kế hoạch cho bản phát hành lớn tiếp theo của ECMAScript ECMAScript 6 (2015) & 7 (2016). một ngôn ngữ mục đích chungĐề xuất ECMAScript Harmony đã trở thành trung tâm cho các cải tiến trong tương lai đối với JavaScript. Nhiều ý tưởng từ ECMAScript 4 đã bị hủy bỏ vĩnh viễn, nhưng những ý tưởng khác đã được thử lại với một tư duy mới. ECMAScript 6, sau này được đổi tên thành ECMAScript 2015, dự kiến sẽ mang đến những thay đổi lớn. Hầu hết mọi thay đổi cần thay đổi cú pháp đều được đẩy trở lại phiên bản này. Tuy nhiên, lần này, ủy ban đã đạt được sự thống nhất và ECMAScript 6 cuối cùng đã được phát hành vào năm 2015. Nhiều nhà cung cấp trình duyệt đã làm việc để triển khai các tính năng của nó, nhưng với một thay đổi lớn, mọi thứ sẽ mất một thời gian. Thậm chí ngày nay, không phải tất cả các trình duyệt đều có phạm vi bảo hiểm đầy đủ của ECMAScript 2015 (mặc dù chúng rất gần) Việc phát hành ECMAScript 2015 đã tạo ra một bước nhảy vọt trong việc sử dụng các bộ chuyển mã như Babel hoặc Traceur. Ngay cả trước khi phát hành, khi các bộ chuyển đổi này theo dõi tiến trình của ủy ban kỹ thuật, mọi người đã trải nghiệm nhiều lợi ích của ECMAScript 2015 Một số tính năng quan trọng của ECMAScript 4 đã được triển khai trong phiên bản ECMAScript này. Tuy nhiên, chúng được thực hiện với một tư duy khác. Chẳng hạn, các lớp trong ECMAScript 2015 không chỉ là cú pháp trên các nguyên mẫu. Tư duy này giúp giảm bớt quá trình chuyển đổi và phát triển các tính năng mới Chúng tôi đã giới thiệu tổng quan về các tính năng mới của ECMAScript 2015 trong bài viết Tổng quan về các tính năng của JavaScript 2015. Bạn cũng có thể xem bảng tương thích ECMAScript để biết chúng tôi hiện đang đứng về mặt triển khai như thế nào Một bản tóm tắt ngắn về các tính năng mới sau đây
Các lớp, let, const, lời hứa, trình tạo, trình vòng lặp, mô-đun, v.v. Đây là tất cả các tính năng nhằm đưa JavaScript đến với nhiều đối tượng hơn và hỗ trợ lập trình trên quy mô lớn. Có thể ngạc nhiên khi rất nhiều tính năng có thể vượt qua quá trình tiêu chuẩn hóa khi ECMAScript 4 không thành công. Theo nghĩa này, điều quan trọng cần lưu ý là nhiều tính năng xâm lấn nhất của ECMAScript 4 đã không được xem xét lại (không gian tên, kiểu nhập tùy chọn), trong khi những tính năng khác được xem xét lại theo cách chúng có thể vượt qua các phản đối trước đó (làm cho các lớp cú pháp trở nên dễ hiểu hơn) . Tuy nhiên, ECMAScript 2015 là một từ khó và mất gần 6 năm để hoàn thành (và hơn thế nữa để triển khai đầy đủ). Tuy nhiên, việc ủy ban kỹ thuật ECMAScript có thể hoàn thành một nhiệm vụ khó khăn như vậy được coi là một dấu hiệu tốt cho những điều sắp tới Một bản sửa đổi nhỏ cho ECMAScript đã được phát hành vào năm 2016. Bản sửa đổi nhỏ này là kết quả của quy trình phát hành mới được thực hiện bởi TC-39. Tất cả các đề xuất mới phải trải qua quy trình bốn giai đoạn. Mọi đề xuất đạt đến giai đoạn 4 đều có cơ hội được đưa vào phiên bản tiếp theo của ECMAScript (mặc dù ủy ban vẫn có thể chọn đẩy lùi việc đưa vào). Bằng cách này, các đề xuất được phát triển gần như độc lập (mặc dù phải tính đến sự tương tác với các đề xuất khác). Các đề xuất không ngăn cản sự phát triển của ECMAScript. Nếu một đề xuất đã sẵn sàng để đưa vào và đủ các đề xuất đã đạt đến giai đoạn 4, phiên bản ECMAScript mới có thể được phát hành Phiên bản được phát hành vào năm 2016 là một phiên bản khá nhỏ. Bao gồm
Tuy nhiên, một số đề xuất thú vị đã đạt đến giai đoạn 4 vào năm 2016, vậy điều gì ở phía trước cho ECMAScript? Tương lai và xa hơn nữa. ECMAScript 2017 trở lênCó lẽ đề xuất giai đoạn 4 quan trọng nhất hiện đang được thực hiện là 74. 75 là một phần mở rộng cú pháp cho JavaScript giúp làm việc với những lời hứa trở nên dễ chịu hơn nhiều. Chẳng hạn, lấy mã ECMAScript 2015 sau 4Và so sánh nó với mã kích hoạt 74 sau đây 0Các đề xuất giai đoạn 4 khác có phạm vi nhỏ
Tất cả các đề xuất này dự kiến sẽ được phát hành vào năm 2017, tuy nhiên, ủy ban có thể chọn đẩy lùi chúng theo quyết định của họ. Tuy nhiên, chỉ cần có 74 sẽ là một sự thay đổi thú vịNhưng tương lai không kết thúc ở đó. Chúng ta có thể xem xét một số đề xuất khác để hiểu được những gì còn ở phía trước. Một số điều thú vị là
JavaScript ngày càng giống một ngôn ngữ có mục đích chung. Nhưng còn một điều quan trọng nữa trong tương lai của JavaScript sẽ tạo ra sự khác biệt lớn WebLắp rápNếu bạn chưa nghe nói về WebAssugging, bạn nên đọc về nó. Sự bùng nổ của các thư viện, khung và sự phát triển chung được khơi dậy kể từ khi ECMAScript 5 được phát hành đã khiến JavaScript trở thành mục tiêu thú vị cho các ngôn ngữ khác. Đối với các cơ sở mã lớn, khả năng tương tác là chìa khóa. Lấy trò chơi làm ví dụ. Ngôn ngữ chung để phát triển trò chơi vẫn là C++ và nó có thể di chuyển đến nhiều kiến trúc. Chuyển một trò chơi Windows hoặc bảng điều khiển sang trình duyệt được coi là một nhiệm vụ không thể vượt qua. Tuy nhiên, hiệu suất đáng kinh ngạc của các máy ảo JIT JavaScript hiện tại đã giúp điều này trở nên khả thi. Do đó, những thứ như Emscripten, trình biên dịch LLVM-to-JavaScript, đã ra đời Mozilla đã thấy điều này và bắt đầu làm việc để biến JavaScript trở thành mục tiêu phù hợp cho trình biên dịch. Asm. js được sinh ra. Asm. js là một tập hợp con nghiêm ngặt của JavaScript, là mục tiêu lý tưởng cho trình biên dịch. Các máy ảo JavaScript có thể được tối ưu hóa để nhận ra tập hợp con này và tạo ra mã thậm chí còn tốt hơn so với mã JavaScript thông thường hiện có. Trình duyệt đang dần trở thành mục tiêu hoàn toàn mới để biên dịch ứng dụng và JavaScript là trung tâm của nó Tuy nhiên, có những hạn chế nhất định mà ngay cả Asm. js có thể giải quyết. Cần phải thực hiện các thay đổi đối với JavaScript không liên quan gì đến mục đích của nó. Để làm cho web trở thành mục tiêu thích hợp cho các ngôn ngữ khác, cần có một thứ gì đó khác biệt và đó chính xác là WebAssembly. WebAssembly là một mã byte cho web. Bất kỳ chương trình nào có trình biên dịch phù hợp đều có thể được biên dịch thành WebAssugging và chạy trên một máy ảo phù hợp (máy ảo JavaScript có thể cung cấp ngữ nghĩa cần thiết). Trên thực tế, các phiên bản đầu tiên của WebAssembly nhằm mục đích tương thích 1-1 với Asm. đặc tả js. WebAssugging không chỉ mang đến lời hứa về thời gian tải nhanh hơn (mã byte có thể được phân tích cú pháp nhanh hơn văn bản), mà khả năng tối ưu hóa không khả dụng tại thời điểm này trong Asm. js. Hãy tưởng tượng một trang web có khả năng tương tác hoàn hảo giữa JavaScript và mã hiện tại của bạn Thoạt nhìn, điều này có vẻ ảnh hưởng đến sự phát triển của JavaScript, nhưng thực tế thì hoàn toàn ngược lại. Bằng cách làm cho các ngôn ngữ và khuôn khổ khác có thể tương tác với JavaScript dễ dàng hơn, JavaScript có thể tiếp tục phát triển như một ngôn ngữ có mục đích chung. Và WebAssugging là công cụ cần thiết cho việc đó Hiện tại, các phiên bản phát triển của Chrome, Firefox và Microsoft Edge hỗ trợ bản nháp của đặc tả WebAssembly và có khả năng chạy các ứng dụng demo Qua một bên. Sử dụng JavaScript tại Auth0Tại Auth0, chúng tôi là những người sử dụng nhiều JavaScript. Từ thư viện Khóa của chúng tôi đến chương trình phụ trợ của chúng tôi, JavaScript cung cấp năng lượng cốt lõi cho các hoạt động của chúng tôi. Chúng tôi nhận thấy bản chất không đồng bộ của nó và rào cản gia nhập thấp đối với các nhà phát triển mới là điều cần thiết cho sự thành công của chúng tôi. Chúng tôi háo hức muốn xem ngôn ngữ này sẽ đi về đâu và tác động của nó đối với hệ sinh thái của nó Đăng ký tài khoản Auth0 miễn phívà xem trực tiếp hệ sinh thái sẵn sàng sản xuất được viết bằng JavaScript. Và đừng lo lắng, chúng tôi có các thư viện máy khách cho tất cả các khung và nền tảng phổ biến
Gần đây, chúng tôi đã phát hành một sản phẩm có tên là Auth0 Extend. Sản phẩm này cho phép các công ty cung cấp cho khách hàng của họ một điểm mở rộng dễ sử dụng chấp nhận mã JavaScript. Với Auth0 Extend, khách hàng có thể tạo quy tắc kinh doanh tùy chỉnh, công việc đã lên lịch hoặc kết nối với hệ sinh thái bằng cách tích hợp với các hệ thống SaaS khác, như Marketo, Salesforce và Concur. Tất cả đều sử dụng các mô-đun JavaScript và NPM đơn giản Sự kết luậnLịch sử của JavaScript đã rất dài và đầy rẫy những khó khăn. Nó đã được đề xuất như là một "Scheme cho web". Ban đầu, nó có cú pháp giống như Java được gắn vào. Nguyên mẫu đầu tiên của nó được phát triển trong vài tuần. Nó chịu đựng những nguy cơ tiếp thị và có ba tên trong vòng chưa đầy hai năm. Sau đó nó được tiêu chuẩn hóa và có cái tên nghe giống bệnh ngoài da. Sau ba lần phát hành thành công, phần thứ tư bị cuốn vào địa ngục phát triển trong gần 8 năm. Ngón tay đã chỉ xung quanh. Sau đó, nhờ sự thành công tuyệt đối của một tính năng duy nhất (AJAX), cộng đồng đã cùng nhau hành động trở lại và quá trình phát triển được tiếp tục. Phiên bản 4 đã bị loại bỏ và một sửa đổi nhỏ, được mọi người gọi là phiên bản 3. 1, được đổi tên thành phiên bản 5. Phiên bản 6 đã mất nhiều năm để phát triển (một lần nữa) nhưng lần này ủy ban đã thành công, nhưng dù sao cũng quyết định đổi tên một lần nữa, lần này là năm 2015. Bản sửa đổi này rất lớn và mất nhiều thời gian để thực hiện. Nhưng cuối cùng, luồng không khí mới đã được thổi vào JavaScript. Cộng đồng hoạt động tích cực hơn bao giờ hết. Nút. js, V8 và các dự án khác đã đưa JavaScript đến những nơi mà nó chưa bao giờ nghĩ tới. Asm. js, WebAssembly sắp phát triển hơn nữa. Và các đề xuất tích cực trong các giai đoạn khác nhau đều làm cho tương lai của JavaScript trở nên tươi sáng hơn bao giờ hết. Đó là một con đường dài, đầy chông gai và JavaScript vẫn là một trong những ngôn ngữ thành công nhất từ trước đến nay. Đó là một minh chứng trong chính nó. Luôn đặt cược vào JavaScript Ai sở hữu JavaScript bây giờ?"JavaScript" là nhãn hiệu của Tập đoàn Oracle tại Hoa Kỳ.
Ai đã tạo ra Java và JavaScript?JavaScript trong 10 ngày
. 0 được phát hành trên toàn thế giới, một nhân viên Netscape tên là Brendan Eich đã viết một loại ngôn ngữ hoàn toàn mới.
JavaScript có thuộc sở hữu của Mozilla không?JavaScript là Thương hiệu của Oracle
. Sau đó, Oracle đã mua lại công ty Sun Microsystem và do đó, tất cả các nhãn hiệu thuộc sở hữu của họ đã được chuyển giao cho Oracle. Như vậy, hiện tại, Oracle đã sở hữu thương hiệu JavaScript.
JavaScript ban đầu được tạo ra để làm gì?JavaScript được Brendan Eich tạo ra tại Netscape Communications vào năm 1995. Netscape và Eich đã thiết kế JavaScript thành ngôn ngữ kịch bản để sử dụng với trình duyệt web hàng đầu của công ty, Netscape Navigator . |