Javascript microsoft edge中的对象扩展运算符抛出错误
我有密码:Javascript microsoft edge中的对象扩展运算符抛出错误,javascript,object,microsoft-edge,spread-syntax,Javascript,Object,Microsoft Edge,Spread Syntax,我有密码: let a = {a: 'a', b: 'b'}; let b = {c: 'c', d: 'd'}; let c = {...a, ...b}; 在chrome浏览器中。。。它的显示:c={a:'a',b:'b',c:'c',d:'d'},但在microsoft edge中,它抛出错误预期的标识符、字符串或数字 我尝试使用cdn.polyfill.io和https://babeljs.io/docs/en/babel-polyfill但运气不好 如何在microsoft edge
let a = {a: 'a', b: 'b'};
let b = {c: 'c', d: 'd'};
let c = {...a, ...b};
在chrome浏览器中。。。它的显示:c={a:'a',b:'b',c:'c',d:'d'}
,但在microsoft edge中,它抛出错误预期的标识符、字符串或数字
我尝试使用cdn.polyfill.io
和https://babeljs.io/docs/en/babel-polyfill
但运气不好
如何在microsoft edge中运行我的网页包代码?它应该可以在edge中使用,因为79年以来不需要任何转码器(如Babel)(但不是IE,不要混淆它们)
也就是说,在大多数情况下,如果需要,您可以使用Object.assign()
-
您的代码将是:
设a={a:a',b:b'};
设b={c:c',d:d'};
设c=Object.assign(a,b)
console.log(c)
将{…obj}
语法称为“”,它是ECMAScript 2018的一部分,Edge Legacy不支持它。您可以使用来传输它
如果您只想在非Node.js环境中使用它,可以使用babel standalone。您只需在脚本中加载babel standalone,并在脚本标记中使用“text/babel”或“text/jsx”类型编写要传输的脚本,Edge Legacy中的结果将是{“a”:“a”,“b”:“b”,“c”:“c”,“d”:“d”}
:
设a={a:a',b:b'};
设b={c:c',d:d'};
设c={…a,…b};
log(JSON.stringify(c));
你在用巴贝尔吗?如果是,你能发布你的babel配置吗?请在这里检查兼容性版本Kornflex,我不使用babel来编译我的代码,但我发现一些帖子,你可以将babel polifyls作为脚本,因此我尝试使用它。Alex L,我的版本是Microsoft Edge 44.18362.449.0
Microsoft EdgeHTML 18.18363
,默认安装在sistemPerfect上,然后您可以使用Object.assign()
没问题,自Edge 12:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/babel-standalone/6.18.1/babel.min.js"></script>
</head>
<body>
<script type="text/babel">
let a = { a: 'a', b: 'b' };
let b = { c: 'c', d: 'd' };
let c = { ...a, ...b };
console.log(JSON.stringify(c));
</script>
</body>
</html>