mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2026-01-08 06:04:12 +01:00
Work around Array.concat bug
This commit is contained in:
@@ -18,6 +18,7 @@
|
|||||||
|
|
||||||
let identity = x => x;
|
let identity = x => x;
|
||||||
|
|
||||||
|
// < FF47
|
||||||
if (!Object.entries)
|
if (!Object.entries)
|
||||||
Object.entries = function (obj) {
|
Object.entries = function (obj) {
|
||||||
let result = [];
|
let result = [];
|
||||||
@@ -32,6 +33,7 @@
|
|||||||
return result;
|
return result;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// < FF47
|
||||||
if (!Object.values)
|
if (!Object.values)
|
||||||
Object.values = function (obj) {
|
Object.values = function (obj) {
|
||||||
let result = [];
|
let result = [];
|
||||||
@@ -46,6 +48,7 @@
|
|||||||
return result;
|
return result;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// < FFEleventyBillion
|
||||||
if (!Array.prototype.flatMap)
|
if (!Array.prototype.flatMap)
|
||||||
Array.prototype.flatMap = function (fn = identity, self = null) {
|
Array.prototype.flatMap = function (fn = identity, self = null) {
|
||||||
let result = [];
|
let result = [];
|
||||||
@@ -68,12 +71,19 @@
|
|||||||
return this.indexOf(...args) != -1;
|
return this.indexOf(...args) != -1;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// < FF48
|
||||||
if (!Array.prototype.values)
|
if (!Array.prototype.values)
|
||||||
Array.prototype.values = function* () {
|
Array.prototype.values = function* () {
|
||||||
for (let [i, value] of this.entries())
|
for (let [i, value] of this.entries())
|
||||||
yield value;
|
yield value;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// > FF47
|
||||||
|
// Broken in 48: primitive first arg is wrapped
|
||||||
|
Array.concat = function (...args) {
|
||||||
|
return Array.prototype.concat.apply([], args);
|
||||||
|
}
|
||||||
|
|
||||||
// < FF40
|
// < FF40
|
||||||
if (!String.prototype.includes)
|
if (!String.prototype.includes)
|
||||||
String.prototype.includes = String.prototype.contains;
|
String.prototype.includes = String.prototype.contains;
|
||||||
|
|||||||
Reference in New Issue
Block a user