【发布时间】:2016-08-31 06:56:01
【问题描述】:
我目前有一个这样的 forEach 循环。
var videoUrls ={};
ytplayer.config.args.url_encoded_fmt_stream_map.split(',')
.forEach(function(item) {
var obj = { };
item.split('&')
.forEach(function(param) {
param = param.split('=');
obj[param[0]] = decodeURIComponent(param[1]);
});
videoUrls[obj.quality] = obj;});
由于 IE 不支持 forEach 循环,我尝试将其转换为 for 循环。
var videoUrls ={};
var typea= ytplayer.config.args.url_encoded_fmt_stream_map.split(',');
for (var item=0; item<typea.length; item++){
var obj= {};
var typeb= typea[item].split('&');
for (var param=0; param<typeb.length; param++){
typeb[param]= typeb[param].split('=');
obj[typeb[0]] = decodeURIComponent(typeb[1]);
}
videoUrls[obj.quality]= obj;
}
但是当我运行脚本时,结果就不同了。我做错了什么?
提前致谢。
【问题讨论】:
-
在这种情况下,为 IE 填充 forEach 可能是有意义的
-
你应该看看这个:github.com/es-shims/es5-shim
-
在这种情况下,将 IE 更新到 edge 可能是有意义的
标签: javascript internet-explorer for-loop foreach