diff --git a/src/browser/js/Local.zig b/src/browser/js/Local.zig index bc4f6d7ca..ad4ab25db 100644 --- a/src/browser/js/Local.zig +++ b/src/browser/js/Local.zig @@ -82,6 +82,18 @@ pub fn newObject(self: *const Local) js.Object { }; } +pub fn newDate(self: *const Local, time_ms: f64) !js.Value { + const handle = v8.v8__Date__New(self.handle, time_ms) orelse return error.JsException; + return .{ .local = self, .handle = handle }; +} + +pub fn newNumber(self: *const Local, f: f64) !js.Value { + return .{ + .local = self, + .handle = self.isolate.initNumber(f).handle, + }; +} + pub fn newArray(self: *const Local, len: u32) js.Array { return .{ .local = self, diff --git a/src/browser/js/Value.zig b/src/browser/js/Value.zig index 3669448f6..9a2a5cb73 100644 --- a/src/browser/js/Value.zig +++ b/src/browser/js/Value.zig @@ -126,6 +126,10 @@ pub fn isArrayBuffer(self: Value) bool { return v8.v8__Value__IsArrayBuffer(self.handle); } +pub fn isDate(self: Value) bool { + return v8.v8__Value__IsDate(self.handle); +} + pub fn isUint8Array(self: Value) bool { return v8.v8__Value__IsUint8Array(self.handle); } diff --git a/src/browser/tests/indexeddb.html b/src/browser/tests/indexeddb.html index 1c818a6eb..b8d8d4cae 100644 --- a/src/browser/tests/indexeddb.html +++ b/src/browser/tests/indexeddb.html @@ -187,6 +187,89 @@ } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +