JavaScript 6:测试符号?
关于EcmaScript 6和符号:我们现在有没有办法测试它们的使用?某些夜间版本的浏览器已经支持它们,但不幸的是,它们的支持仅限于@toString和@iterator…在ES6功能在引擎中可用之前使用它们的最通用解决方案是 它可用于在线测试: 作为一个transpiler,您可以编写ES6代码并作为ES5部署: 但是:JavaScript 6:测试符号?,javascript,ecmascript-6,Javascript,Ecmascript 6,关于EcmaScript 6和符号:我们现在有没有办法测试它们的使用?某些夜间版本的浏览器已经支持它们,但不幸的是,它们的支持仅限于@toString和@iterator…在ES6功能在引擎中可用之前使用它们的最通用解决方案是 它可用于在线测试: 作为一个transpiler,您可以编写ES6代码并作为ES5部署: 但是: Symbol.toPrimitive在Babel:logsNaN而不是42中处理不正确 let thing = { [Symbol.toPrimitive]() {
Symbol.toPrimitive
在Babel:logsNaN
而不是42
中处理不正确
let thing = {
[Symbol.toPrimitive]() {
return 42;
}
};
console.log(+thing)
有一个名为的库,包含ECMAScript 5、ECMAScript 6的多填充:符号、集合、迭代器、承诺、ECMAScript 7提案;setImmediate和数组泛型 你到底想测试什么?目的/用例是什么?您始终可以执行
typeof Symbol!='未定义的“&&Symbol.symbolatoTest
我想测试它们的使用。例如,每当需要隐式地将对象转换为基元类型时,都应该使用Symbol.toPrimitive。因此,我创建了一个示例,在对象上定义它。不幸的是,我还没有找到一个可以测试我的实现的地方……哦,我明白了。您正在使用符号,您只想测试代码。我不认为有一个普遍的答案。您只能真正测试该环境支持的符号,即使这样,实现也可能有错误或不完整。谢谢Felix。我就是这么想的。使用transpilers等人在这里帮不了我…为什么投票结果很接近?这个问题对我来说似乎很清楚。谢谢你提供的信息。在测试我的代码之前,我似乎还得再等一会儿。。。