2008-09-25 66 views

Trả lời

74

Chỉ các tên khác nhau cho những gì thực sự là ECMAScript. John Resig có good explanation.

Dưới đây là phiên bản đầy đủ sự cố:

  • IE 6-7 hỗ trợ JScript 5 (tương đương với ECMAScript 3, JavaScript 1.5)
  • IE 8 hỗ trợ JScript 6 (tương đương với ECMAScript 3, JavaScript 1.5 - nhiều sửa lỗi hơn JScript 5)
  • Firefox 1.0 hỗ trợ JavaScript 1.5 (Tương đương ECMAScript 3)
  • Firefox 1.5 hỗ trợ JavaScript 1.6 (1.5 + Array Extras + E4X + misc.)
  • Firefox 2.0 hỗ trợ JavaScript 1,7 (1,6 + Generator + Vòng lặp + để + misc.)
  • Firefox 3.0 hỗ trợ JavaScript 1.8 (1,7 + Generator Expressions + Biểu hiện đóng cửa + misc.)
  • Phiên bản tiếp theo của Firefox sẽ hỗ trợ JavaScript 1.9 (1.8 + Để được xác định)
  • Opera hỗ trợ ngôn ngữ tương đương với ECMAScript 3 + Getters and Setters + misc.
  • Safari hỗ trợ ngôn ngữ tương đương với ECMAScript 3 + Getters and Setters + misc.
+8

Điều này là sai. JScript hỗ trợ một số tính năng cú pháp không có trong JavaScript, bao gồm 'f (x) = y'. Xem [câu hỏi này] (http://stackoverflow.com/questions/18838213/property-bag-in-javascript/18838507) để biết thêm. –

+1

đăng câu trả lời * cập nhật * mới vui lòng @Asad – Malachi

+4

@Malachi Tôi không cần. [Câu trả lời của Patrick] (http://stackoverflow.com/a/135256/1726343) là chính xác. –

4

JScript là việc thực hiện Microsoft Javascript

+36

JScript là việc Microsoft triển khai ECMAScript * –

19

Từ Wikipedia: http://en.wikipedia.org/wiki/Jscript

JScript là phương ngữ Microsoft ECMAScript ngôn ngữ kịch bản đặc điểm kỹ thuật.

JavaScript (thực hiện Netscape/Mozilla thông số ECMA ), JScript và ECMAScript là các ngôn ngữ rất giống nhau. Trên thực tế, tên "JavaScript" thường là được sử dụng để chỉ ECMAScript hoặc JScript.

Microsoft sử dụng tên JScript để triển khai để tránh các vấn đề về nhãn hiệu (JavaScript là nhãn hiệu của Oracle Corporation).

+0

Ngoài ra, hãy xem http://en.wikipedia.org/wiki/JavaScript – Nipuna

+6

Điều này không trả lời được câu hỏi nào cả. Câu hỏi đặt ra là: "Sự khác biệt giữa JavaScript và JScript" là gì. [Câu trả lời đúng] (http://stackoverflow.com/a/135256/1726343) được chôn dưới nhiều lần nhắc lại cùng một điều. –

+0

Điều này không còn đúng: https://github.com/Microsoft/ChakraCore –

5

JScript là việc Microsoft triển khai đặc tả ECMAScript. JavaScript là việc triển khai thực hiện đặc tả của Mozilla.

4

Theo this bài viết:

  • Javascript là một ngôn ngữ kịch bản được phát triển bởi Netscape Communications thiết kế cho phát triển ứng dụng client và server Internet. Netscape Navigator được thiết kế để giải thích JavaScript nhúng vào các trang Web. JavaScript độc lập với ngôn ngữ Java của Sun Microsystem.

  • Microsoft JScript là một triển khai mở của JavaScript của Netscape. JScript là một ngôn ngữ kịch bản hiệu năng cao được thiết kế để tạo ra nội dung trực tuyến đang hoạt động cho World Wide Web. JScript cho phép các nhà phát triển liên kết và tự động hóa nhiều đối tượng trong các trang Web, bao gồm các điều khiển ActiveX và các chương trình Java. Microsoft Internet Explorer được thiết kế để giải thích JScript được nhúng vào các trang Web.

+4

Mở triển khai? –

+2

@phrj: đây là định nghĩa Humpty Dumpty của "Open". AFAIK, nó có nghĩa là "trực giao". – Shog9

+7

Gọi JScript "hiệu suất cao" trở lại trong thời kỳ tiền V8 làm cho người ta nhận ra chúng ta đã đến được bao xa. –

1

Wikipedia có this để nói về sự khác biệt.

Nói chung JScript là một ngôn ngữ kịch bản ActiveX có thể được hiểu là JavaScript bởi các trình duyệt không phải IE.

33

Theo như tôi có thể nói, có hai điều:

  1. ActiveXObject constructor
  2. Các thành ngữ f (x) = y, đó là tương đương với f [x] = y.
+2

Thành ngữ 'f (x) = y' gây lỗi cho tôi nhất! Tại sao, oh tại sao họ không chỉ đi với 'f [x] = y' ... –

+3

Nhắc tôi về Visual Basic. –

+1

MS cần thiết để thêm tem của họ trong thời đại này. Đó là cách bạn biết nó tốt. – cchamberlain

6

Javascript, ngôn ngữ, đến trước, từ Netscape.

Javascript được thiết kế ngược của Microsoft và gọi nó là JScript để tránh các vấn đề về nhãn hiệu với Sun. (Netscape và Sun đã hợp tác vào thời điểm đó, vì vậy đây không phải là vấn đề)

Các ngôn ngữ giống nhau, cả hai đều là phương ngữ của tập lệnh ECMA, tiêu chuẩn sau thực tế.

Mặc dù ngôn ngữ là giống hệt nhau, vì JScript chạy trong trình duyệt Internet Explorer, nó có quyền truy cập vào đối tượng khác nhau tiếp xúc bởi trình duyệt (như ActiveXObject)

+8

Cả hai ngôn ngữ đều không giống nhau, như được nêu trong một bài đăng khác. – EFraim

-4

JScript là tương đương với Microsoft 's JavaScript.
Java là một sản phẩm Oracle và đã từng là sản phẩm Mặt trời.

Oracle đã mua Sun.

Javascript + Microsoft JScript =

+10

Dễ dàng sử dụng tính năng in đậm! – Jowen

+0

Tại sao lại là Java? Bạn có nghĩa là JavaScript. – Stack0verflow

-3

JScript là một ngôn ngữ .NET tương tự như C#, với khả năng tương tự và truy cập vào tất cả các chức năng NET.

JavaScript được chạy trên máy chủ ASP Classic. Sử dụng ASP cổ điển để chạy cùng một JavaScript mà bạn có trên Máy khách (không bao gồm khả năng HTML5). Tôi chỉ có một bộ mã theo cách này cho hầu hết mã của tôi.

Tôi chạy .ASPX JScript khi tôi yêu cầu chức năng Tệp hình ảnh và nhị phân, (trong số nhiều hàm khác) không có trong ASP cổ điển. Mã này là duy nhất cho máy chủ, nhưng cực kỳ mạnh mẽ.

+4

Tôi nghĩ bạn đang nghĩ đến [JScript.Net] (https://en.wikipedia.org/wiki/JScript_.NET) – Lankymart

0

Có một số khác biệt về mã cần biết.

Thông số đầu tiên phủ định cho phụ không được hỗ trợ, ví dụ:trong Javascript: "string".substr(-1) trả về "g", trong khi trong JScript: "string".substr(-1) trả về "chuỗi"

Có thể làm "string"[0] để nhận "s" trong Javascript, nhưng JScript không hỗ trợ cấu trúc như vậy. (Trên thực tế, chỉ các trình duyệt hiện đại mới xuất hiện để hỗ trợ cấu trúc "string"[0].

1

Thời gian dài trước tất cả các nhà cung cấp trình duyệt đã tạo công cụ javascript cho trình duyệt của họ và chỉ có họ và thần mới biết điều gì đang xảy ra bên trong. : chúng ta hãy tạo ra các công cụ dựa trên tiêu chuẩn chung, chúng ta hãy làm một cái gì đó chung để làm cho cuộc sống trở nên dễ dàng hơn và thú vị hơn và chúng tạo ra tiêu chuẩn đó vì tất cả các nhà cung cấp trình duyệt đều sử dụng công cụ Javascript của chúng dựa trên lõi ECMAscript (tiêu chuẩn). google chrome sử dụng động cơ V8 và đây là mã nguồn mở, bạn có thể tải xuống và xem cách chương trình C++ dịch lệnh 'in' của Javascript sang mã máy.

Internet Explorer sử dụng công cụ JScript (Chakra) cho trình duyệt của họ và những người khác làm như vậy và tất cả đều sử dụng lõi chung.

Các vấn đề liên quan