ホームページ  >  に質問  >  本文

javascript - 关于谷歌浏览器对ES各版本的支持问题

低版本谷歌浏览器对数组转json的提示报错
代码如下

var dt_save = [];
for(var i=0;i<item.length;i++){
    dt.save.push({
        code:item[i]
    });
}
$.ajax({
    type: "POST",
    url: "/ckToDept/sel_save",
    dataType: "json",
    data:{dt_save},  //本行高版本谷歌浏览器和360都顺利通过,但是8.0版本谷歌提示dt_save未定义
    success:function(data){
    
    }
})

关于数组[],直接用{}转化为json对象的语法,不确定是否是ES6的语法。请教此兼容性问题如何解决。

PHP中文网PHP中文网2772日前374

全員に返信(2)返信します

  • 伊谢尔伦

    伊谢尔伦2017-04-11 12:23:07

    一般对象,其内容基本都是键值对的形式出现。
    直接给一个数组变量套一个{},没见过这么写的。感觉没报错是因为es6的一个语法,无需声明key值。

    如果我来写的话,大概就

    data:{'dt_save':dt_save}

    PS: 上面的dt_save赋值,写错了吧?

    dt.save.push(xxx)

    返事
    0
  • PHP中文网

    PHP中文网2017-04-11 12:23:07

    {data} 是es6语法,但是不是转json,它和{data:data}写法是一样的,低版本不支持

    返事
    0
  • キャンセル返事