Android 4.4浏览器在阵列推送方法中报告意外标识

问题描述:

Android 4.4.2移动浏览器在下面的函数中指向“caption:title”的行中报告“意外标识符”。Android 4.4浏览器在阵列推送方法中报告意外标识

function createGallery(images, title, container) 
{ 
    "use strict"; 

    var obj = []; 
    images.map(function(link, idx) { 
     obj.push({ 
     link, 
     caption: title 
     }); 
    }); 

} 

我测试了浏览器的代码的Android 6,并没有报告任何语法错误,只是正常工作。 即使我没有在任何地方调用函数,它也开始吐出错误。

注意:“严格使用”对于解决严格模式问题上的早期错误是必要的。 UC浏览器,Opera Mini和android内置浏览器都报告了与Android 4.4.2相同的语法错误。

+1

obj.push({链接:链接,标题:标题})。原因是上面的线路 –

+0

@AraratHarutyunyan谢谢,这正是问题所在,但我很惊讶,我看不到这一点。但为什么旧的编译器会检测到新的忽略的语法错误? – ultrasamad

+0

请参阅答案 –

旧的浏览器不支持您使用的对象声明。你最好使用的语法如下:

{ 
    link: link, 
    caption: title 
} 

这相当于

{ 
    link, 
    caption: title 
} 

这是ECMAScript的6功能