Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
mohamedkhallouq
GitHub Repository: mohamedkhallouq/content
Path: blob/main/files/en-us/mozilla/firefox/releases/37/index.md
6581 views
---
title: Firefox 37 for developers slug: Mozilla/Firefox/Releases/37
---

{{FirefoxSidebar}}

Firefox 37 was released on March 31st, 2015. This article lists key changes that are useful not only for web developers, but also Firefox and Gecko developers as well as add-on developers.

Changes for Web developers

Developer Tools

Highlights:

All devtools bugs fixed between Firefox 36 and Firefox 37.

CSS

HTML

  • The value <a rel="noreferrer"> now also works when the link is opened in new tab (Firefox bug 1031264).

  • The '.' followed by the extension is now allowed in <input accept>: when used, a file selector filters with this given extension to be proposed to the user (Firefox bug 826176).

JavaScript

  • The {{jsxref("Map")}}, {{jsxref("Set")}}, {{jsxref("WeakMap")}} and {{jsxref("WeakSet")}} constructors now ignore null iterable (Firefox bug 1092538).

  • The {{jsxref("Map")}}, {{jsxref("Set")}}, {{jsxref("WeakMap")}} and {{jsxref("WeakSet")}} constructors now supports monkey-patched prototype.set or prototype.add (Firefox bug 804279).

  • The Non-standard {{jsxref("String.quote","String.prototype.quote()")}} method has been removed (Firefox bug 1103181).

  • The {{jsxref("RegExp.prototype.flags")}} property has been implemented (Firefox bug 1108467).

  • Several {{jsxref("Array")}} methods have been implemented for typed arrays as well:

    • The {{jsxref("TypedArray.every", "every()")}} and {{jsxref("TypedArray.some", "some()")}} methods (Firefox bug 1116390).

    • The {{jsxref("TypedArray.find", "find()")}} and {{jsxref("TypedArray.findIndex", "findIndex()")}} methods (Firefox bug 1078975).

    • The {{jsxref("TypedArray.fill", "fill()")}} method (Firefox bug 1113722).

    • The {{jsxref("TypedArray.indexOf", "indexOf()")}} and {{jsxref("TypedArray.lastIndexOf", "lastIndexOf()")}} methods (Firefox bug 1107601).

    • The {{jsxref("TypedArray.join", "join()")}} method (Firefox bug 1115817).

    • The {{jsxref("TypedArray.reduce", "reduce()")}} and {{jsxref("TypedArray.reduceRight", "reduceRight()")}} methods (Firefox bug 1117350).

    • The {{jsxref("TypedArray.reverse", "reverse()")}} method (Firefox bug 1111516).

    • The {{jsxref("TypedArray.keys", "keys()")}}, {{jsxref("TypedArray.values", "values()")}}, and {{jsxref("TypedArray.entries", "entries()")}} methods (Firefox bug 1119217).

  • ES2015 Proxy {{jsxref("Global_Objects/Proxy/handler/enumerate", "enumerate")}} trap is implemented (Firefox bug 783829).

  • The configurable attribute of the {{jsxref("Function.length")}} property is now true per the ES2015 specification (Firefox bug 911142).

  • The development of ParallelJS (PJS) has been discontinued due to the limited future prospects, little attention and code complexity. The experimental implementation that had been enabled only on the Nightly channel, including the Array.prototype.mapPar, filterPar and reducePar methods, has been completely removed.

Interfaces/APIs/DOM

  • The {{domxref("StereoPannerNode")}} Web Audio node has been implemented (Firefox bug 1100349).

  • The {{jsxref("Promise")}}-based version of {{domxref("OfflineAudioContext")}} is now available (Firefox bug 1087944).

  • The experimental, not activated by default, implementation of Service Workers progresses: {{domxref("ServiceWorkerRegistration/update", "ServiceWorkerGlobalScope.update()")}} has been implemented Firefox bug 1065366.

  • The IndexedDB API can now be used in Web workers (Firefox bug 701634).

  • Our experimental implementation of WebGL 2.0 is going forward!

    • The {{domxref("WebGL2RenderingContext.getBufferSubData()")}} method has been implemented to provide access to Buffer Objects (Firefox bug 1048731).

  • In keeping with the evolving WebRTC specification, we have deprecated {{domxref("RTCIceServer.url")}} in favor of {{domxref("RTCIceServer.urls")}}, which lets you specify more than one URL for a given ICE server.

  • Some key names of KeyboardEvent.key are changed for conforming the latest DOM Level 3 Events spec. See the tables of KeyboardEvent.key values in MDN. The green cells are new values. And purple values are still unstable. Be careful if you use them (meta bug for these changes is Firefox bug 900372).

  • The {{domxref("console")}} interface is now working on {{domxref("ServiceWorker")}} and {{domxref("SharedWorker")}}. It was previously available but not working (Firefox bug 1058644).

  • The value of {{domxref("KeyboardEvent.key")}} was incorrectly being reported as "RomanCharacters" when the 英数 (Eisu) key was pressed. Now it correctly returns "Eisu".

MathML

No change.

SVG

Audio/Video

No change.

Networking

  • WebSockets now supports the permessage compression method, if the server does support it (Firefox bug 792831).

Security

Changes for add-on and Mozilla developers

Add-on SDK

No change.

XUL

No change.

Older versions

{{Firefox_for_developers('36')}}