Не нарушен ли структурированный клон Web Worker в IE11 для Set / Map? - PullRequest
1 голос
/ 19 марта 2020

Мне кажется, что IE11 не может передать наборы / карты веб-работнику с помощью postMessage. Структурный клон должен работать для них, согласно MDN / caniuse, поэтому что-то не так с тем, что я пропускаю ниже, или IE11 здесь не работает?

(Редактировать: забавно, фрагменты stackoverflow не работают с IE11. Проверьте это в консоли здесь https://jsfiddle.net/zt3emy6c/)

var b = new Blob(['self.onmessage=function(e){'+
    'console.log(e.data.q);'+
    'console.log(e.data.q.size);'+
    'postMessage([e.data,new Set(),new Map([[1, "asdf"]])]);}'
], { type: 'application/javascript' });

var worker = new Worker(URL.createObjectURL(b));

worker.addEventListener('message', function(e) { 
    console.log('expected e.data[0].q.size to equal 1, got ' + e.data[0].q.size);
    console.log('expected e.data[1].size to equal 0, got ' + e.data[1].size);
    console.log('expected e.data[2].size to equal 1, got ' + e.data[2].size);
    console.log('expected e.data[2].get to exist, got ' + e.data[2].get);
});

var values = new Set();
values.add('asdf');
worker.postMessage({ q: values });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...