W3C home > Mailing lists > Public > public-webapps@w3.org > April to June 2015

Re: Exposing structured clone as an API?

From: Elliott Sprehn <esprehn@chromium.org>
Date: Thu, 23 Apr 2015 15:34:14 -0700
Message-ID: <CAO9Q3iJegJ=my10mkUUGGUn1OzPfVYDgAwwji8TELTOxqiC=xQ@mail.gmail.com>
To: Martin Thomson <martin.thomson@gmail.com>
Cc: public-webapps <public-webapps@w3.org>, kg@luminance.org, Ted Mielczarek <ted@mozilla.com>
The way many browsers implement this isn't going to be particularly fast.
It serializes the objects to a byte sequence so it can be transferred to
another thread or process and then inflates the objects on the other side.

Have you benchmarked this? I think you're better off just writing your own
clone library.
On Apr 23, 2015 12:30 PM, "Martin Thomson" <martin.thomson@gmail.com> wrote:

> On 23 April 2015 at 15:02, Ted Mielczarek <ted@mozilla.com> wrote:
> > Has anyone ever proposed exposing the structured clone algorithm
> directly as an API?
>
> If you didn't just do so, I will :)
>
> > 1. https://twitter.com/TedMielczarek/status/591315580277391360
>
> Looking at your jsfiddle, here's a way to turn that into something useful.
>
> +Object.prototype.clone = Object.prototype.clone || function() {
> - function clone(x) {
>     return new Promise(function (resolve, reject) {
>         window.addEventListener('message', function(e) {
>             resolve(e.data);
>         });
> +        window.postMessage(this, "*");
> -        window.postMessage(x, "*");
>     });
> }
>
> But are we are in the wrong place to have that discussion?
>
>
Received on Thursday, 23 April 2015 22:34:43 UTC

This archive was generated by hypermail 2.3.1 : Friday, 27 October 2017 07:27:31 UTC