ES5对象转换



如何在ES5中构造favMap对象,使其返回相同的数据?目前我正在使用EcmaScript2015语法创建它,但它在IE中不起作用。

var company = "Toyota,Honda,Ford";
var companyArray = company.split( "," );
const favMap = {  
[companyArray[0]]: ["Sedans"],  //this syntax gives error in Internet Explorer
[companyArray[1]]: ["Suvs"]
};
console.log(favMap);

错误为"预期的标识符、字符串或数字"。在Internet Explorer控制台中运行此代码以查看错误。

IE中不支持计算属性名称。

您可以通过声明一个空对象,然后通过括号语法分配属性来实现同样的目的:

const company = "Toyota,Honda,Ford";
const companyArray = company.split( "," );
const favMap = {};
favMap[companyArray[0]] = ['Sedans'];
favMap[companyArray[1]] = ['Suvs'];
console.log(favMap);

最新更新