From 52d0798936c40df8e5db365c21f5f577f02937f8 Mon Sep 17 00:00:00 2001 From: WindSpiritSR Date: Tue, 25 Apr 2023 15:35:55 +0800 Subject: [PATCH] polyfill Object.entries Signed-off-by: WindSpiritSR --- ts/src/index.ts | 2 ++ ts/src/polyfills/objectEntries.ts | 16 ++++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 ts/src/polyfills/objectEntries.ts diff --git a/ts/src/index.ts b/ts/src/index.ts index b35112e..1ec435b 100644 --- a/ts/src/index.ts +++ b/ts/src/index.ts @@ -1,3 +1,5 @@ +import './polyfills/objectEntries'; + export class Enumify { //#################### Static diff --git a/ts/src/polyfills/objectEntries.ts b/ts/src/polyfills/objectEntries.ts new file mode 100644 index 0000000..38a4d79 --- /dev/null +++ b/ts/src/polyfills/objectEntries.ts @@ -0,0 +1,16 @@ +/* + * Object.entries() polyfill + * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/entries + */ +if (!Object.entries) { + Object.entries = function(obj: any) { + const ownProps = Object.keys(obj); + let i = ownProps.length; + let resArray = new Array(i); + while (i--) { + resArray[i] = [ownProps[i], obj[ownProps[i]]]; + } + + return resArray; + }; +} \ No newline at end of file