Яка різниця між JavaScript і JScript?


117

Я завжди цікавився, ЧОМУ Хек?!? - різниця між JScript та JavaScript.


Я впевнений, що це вже вказано, але IE, ви не можете використовувати constключове слово для оголошення змінних: const MY_CONSTANT = 10;
dplante

Відповіді:


83

Просто різні назви того, що є насправді ECMAScript. Джон Ресіг має хороше пояснення .

Ось повна версія версії:

  • Підтримка IE 6-7 JScript 5 (що еквівалентно ECMAScript 3, JavaScript 1.5)
  • IE 8 підтримує JScript 6 (що еквівалентно ECMAScript 3, JavaScript 1.5 - більше виправлень помилок над JScript 5)
  • Firefox 1.0 підтримує JavaScript 1.5 (еквівалент ECMAScript 3)
  • Firefox 1.5 підтримує JavaScript 1.6 (1.5 + додатки для масиву + E4X + різне)
  • Firefox 2.0 підтримує JavaScript 1.7 (1.6 + Генератор + Ітератори + let + різне.)
  • Firefox 3.0 підтримує JavaScript 1.8 (1.7 + генераторні вирази + закриття виразів + різне.)
  • Наступна версія Firefox підтримуватиме JavaScript 1.9 (1.8 + Визначимось)
  • Opera підтримує мову, еквівалентну ECMAScript 3 + Getters і Setters + misc.
  • Safari підтримує мову, еквівалентну ECMAScript 3 + Getters та Setters + misc.

15
Це неправильно. JScript підтримує деякі функції синтаксису, відсутні в JavaScript, в тому числі f(x) = y. Детальніше див. У цьому питанні .
Асад Саедюддін

4
@Malachi мені не потрібно. Відповідь Патріка правильна.
Asad Saeeduddin

38

Наскільки я можу сказати, дві речі:

  1. Конструктор ActiveXObject
  2. Ідіома f (x) = y, що приблизно еквівалентна f [x] = y.

5
У f(x) = yідіома помилок мене найбільше! Чому, о, чому вони просто не пішли f[x] = y...
Атес Горал

2
МС потрібно було додати свою печатку в цю епоху. Ось так ви знаєте її добро.
cchamberlain

21

З Вікіпедії: http://en.wikipedia.org/wiki/Jscript

JScript - діалект Microsoft із специфікації мови сценаріїв ECMAScript.

JavaScript (реалізація Netscape / Mozilla специфікації ECMA), JScript та ECMAScript є дуже схожими мовами. Насправді назва "JavaScript" часто використовується для позначення ECMAScript або JScript.

Microsoft використовує ім'я JScript для своєї реалізації, щоб уникнути проблем із товарними знаками ( JavaScript є торговою маркою корпорації Oracle ).


7
Це зовсім не відповідає на питання. Питання: "Які відмінності між JavaScript та JScript". Правильна відповідь похований під кількома повтореннями одного і того ж.
Асад Саедюддін

7

JScript - це впровадження Microsoft специфікації ECMAScript. JavaScript - реалізація специфікації Mozilla.


7

Javascript, мова, прийшов першим, від Netscape.

Microsoft зворотно розробила Javascript і назвала його JScript, щоб уникнути проблем із торговою маркою в Sun. (У той час Netscape і Sun були партнерами, тому це було менше проблем)

Мови ідентичні, обидві - діалекти сценарію ECMA, стандарту за фактом.

Хоча мови ідентичні, оскільки JScript працює в Internet Explorer, він має доступ до різних об'єктів, які піддаються оглядачу (наприклад, ActiveXObject)


10
Ні одна з мов насправді не однакова, як викладено в іншій публікації.
EFraim


4

Відповідно до цієї статті:

  • JavaScript - це сценарій мови, розроблений Netscape Communications, призначений для розробки клієнтських та серверних інтернет-додатків. Netscape Navigator призначений для інтерпретації JavaScript, вбудованого у веб-сторінки. JavaScript не залежить від мови Java Sun Microsystem.

  • Microsoft JScript - це відкрита реалізація JavaScript Netscape. JScript - це високоефективна сценарна мова, призначена для створення активного онлайн-вмісту для всесвітньої павутини. JScript дозволяє розробникам зв’язувати та автоматизувати найрізноманітніші об’єкти на веб-сторінках, включаючи елементи керування ActiveX та програми Java. Microsoft Internet Explorer призначений для інтерпретації вбудованого у веб-сторінки JScript.


2
@phrj: це визначення Humpty Dumpty "Відкрито". AFAIK, це означає "ортогональний".
Shog9

7
Виклик JScript "високоефективних" ще в епоху до V8 дозволяє зрозуміти, як далеко ми зайшли.
Ray Toal

6
Другий пункт списку виглядає як рекламний матеріал - "відкрита реалізація" насправді означає "ви повинні бути відкрито налаштованими, щоб прийняти це", а "високопродуктивний" означає "призначений для роботи на високопродуктивній машині".
Каміло Мартін

4

Здавна всі провайдери браузерів робили JavaScript для своїх браузерів, і тільки вони і Бог знали, що відбувається всередині цього. Одного прекрасного дня, міжнародник ECMA прийшов і сказав: давайте зробимо двигуни за загальним стандартом, давайте зробимо щось загальне, щоб зробити життя більш легким та веселим, і вони зробили цей стандарт. Оскільки всі постачальники браузерів створюють свої механізми JavaScript на основі ядра ECMAScript (стандарт).

Наприклад, Google Chrome використовує двигун V8, і це з відкритим кодом. Ви можете завантажити його і побачити, як програма C ++ переводить команду 'print' JavaScript у машинний код.

Internet Explorer використовує для свого браузера движок JScript (Chakra), а інші - і всі вони використовують загальну основу.


2

У Вікіпедії є це , щоб сказати про відмінності.

Загалом JScript - це сценарій мови ActiveX, який, ймовірно, інтерпретується як JavaScript не-IE-браузерами.


1

Слід пам’ятати про деякі кодові відмінності.

Негативний перший параметр subtr не підтримується, наприклад у Javascript: "string".substr(-1)повертає "g", тоді як у JScript: "string".substr(-1)повертає "рядок"

Можна зробити "string"[0]"s" у Javascript, але JScript не підтримує таку конструкцію. (Насправді, як видається, підтримують "string"[0]конструкцію лише сучасні браузери .


-5

Jscript - це .NET мова, схожа на C #, з однаковими можливостями та доступом до всіх функцій .NET.

JavaScript запускається на сервері ASP Classic. Використовуйте Classic ASP для запуску того самого JavaScript, який ви маєте у Клієнта (за винятком можливостей HTML5). У мене є лише один набір коду таким чином для більшості мого коду.

Я запускаю .ASPX JScript, коли мені потрібні функції зображень та двійкових файлів (серед багатьох інших), які відсутні в Classic ASP. Цей код унікальний для сервера, але надзвичайно потужний.


7
Я думаю, ти думаєш про JScript.Net
Lankymart

-7

JScript - еквівалент JavaScript у Microsoft . Java є продуктом Oracle і використовувався як продукт Sun.

Oracle купила Sun .

JavaScript + Microsoft = JScript


14
Ідіть легко на сміливості!
Джовен

Чому Java? Ви мали на увазі JavaScript.
Stack0verflow

Важлива примітка для тих, хто може не знати: JavaScript і Java - це не одне і те ж або пов’язане між собою. JavaScript спочатку називався LiveScript. Але перейменований на JavaScript, щоб скористатися популярністю Java. Спільний доступ до імені - це ступінь того, що у них спільного, крім подібності з мовою синтаксису на C.
Бекон Бред
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.