JS对象新增方法Object.fromEntries

Object.fromEntries

Object.fromEntries作为Object对象的新方法,可以视为Object.entries的反向操作
该方法可以把键值对列表转化为一个对象,入参可以是一个Map、Set、Array类型,或者其他实现了可迭代协议的可迭代对象。(可迭代协议和可迭代对象,可以参考
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Iteration_protocols
https://es6.ruanyifeng.com/#docs/iterator

const entries = new Map([
  [ foo ,  bar ],
  [ baz , 42]
]);

const obj = Object.fromEntries(entries);

console.log(obj);
// 可以快捷地将Map和Set实例转化为对象类型
// expected output: Object { foo: "bar", baz: 42 }

目前也可以通过Object.fromEntries方法 + RLSearchParams将location上面的url search参数,快速转化为对象类型:

Object.fromEntries(new URLSearchParams(location.search))

浏览器兼容性方面,除了ie,其他主流新版本浏览器均支持该方法。

URLSearchParams

该方法传入location.search作为参数时,会自动解析url参数,并且会返回一个可迭代的URLSearchParams对象(虽然他和MapSet有着类似的api,列如get、set、delete。但是他却不是Map和Set的实例
兼容性方面,同样是不支持ie,其他主流浏览器均支持

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容