各位大神,我想知道在js中,对象可以这样赋值:
var apple = 1;console.log({apple})
这样会打印出{apple:1}
因为在「javascript高级程序设计」书里面好像没有看到,我想知道这个是所有浏览器都兼容的写法吗,或者说有文章写过这种写法,麻烦知道的大神告知我,谢谢
ES6中,var apple = 1;{apple} 相当于 {apple:apple}
ECMAScript 6新语法
这是ES2015(或称ES6)的新语法,相关文章:
英文的
中文的
遇到过和题主类似的问题。
underscore.js的模板,渲染到页面。
var data = 123;
var _html = _.template("<span> <%= data %> </span>");
$("div").html(_html({data})); // {data}的完整写法就是{data:data}
这种简写在大多数浏览器貌似都可以,但qq浏览器内核的就不行。不识别模板。