core-js介绍及安装使用
前言
这里就和大家说一下core-js的开发者,也是网上查阅的资料。
并在一次事故中,他以 60 km/h的速度驾驶,结果撞了两个行人,一人现场死亡。根据俄罗斯联邦法律,他被判处有期徒刑 18 个月,剥夺 2 年驾驶权利,另处以罚金 138 万卢布。
一、core-js到底是什么?
1. ECMAScript 的迅速成长以及浏览器的频繁更新换代,每年会出现新的 api ,举个例子 es6 时期诞生的 Promise ,Set 或者是 es7 数组新提供的方法 includes ,这些新加入的 api ,就引出一个词 "polyfill" polyfill(垫片/补丁) 就是用社区上提供的一段代码,让我们在不兼容某些新特性的浏览器上,使用该新特性。新功能的esapi转换为大部分现代浏览器都可以支持运行的一个api 补丁包集合。
2. 因为官方库对他介绍的形容 2.1. 它支持最新的 ECMAScript 标准 2.2. 它支持ECMAScript 标准库提案 2.3. 它支持一些 WHATWG / W3C 标准(跨平台或者 ECMAScript 相关) 2.4. 它最大限度的模块化:你能仅仅加载你想要使用的功能 2.5. 它能够不污染全局命名空间 2.6. 它和babel紧密集成:这能够优化core-js的导入 2.7. 它是最普遍、最流行 的给 JavaScript 标准库打补丁的方式
二、core-js相关功能包.
在corejs的工程项目的 packages文件中 中 https://github.com/zloirock/core-js/tree/master/packages,能看到五个相关包 1.1. core-js 安装npm install core-js 作用定义全局的polyfill
1.2. core-js-pure 安装 npm i core-js-pure 作用提供不污染全局环境的polyfill,等价于core-js@2/library
1.3. core-js-compat安装npm i core-js-compat 作用维护了按照browserslist规范的垫片需求数据,来帮助我们找到符合目标环境的 polyfills 需求集合
1.4. core-js-builder 安装npm i core-js-builder 作用可以被 Node.js 服务使用,构建出不同场景的垫片包。
1.5.core-js-builder 安装npm i core-js-builder 作用可以结合 core-js-compact 以及 core-js,并利用 webpack 能力, 根据需求打包出 core-js 代码
三、如何使用?
1. 安装 npm 方式
// global version npm install --save core-js@3.18.3 // version without global namespace pollution npm install --save core-js-pure@3.18.3 // bundled global version npm install --save core-js-bundle@3.18.3
2. 按需导入或者全局导入
// 导入所有新提案api import "core-js"; // 唯一稳定的core js功能-es和web标准 import "core-js/stable"; // 仅支持稳定的ES功能 import "core-js/es"; // 只导入指定api import "core-js/features/set"; import "core-js/stable/set"; import "core-js/es/set";
3. 使用demo
主要是因为IE浏览器无法兼容新的语法、api,所以就需要用到core-js进行兼容性处理,从而解决问题。
// first file: import core-js/modules/es.array.iterator; import core-js/modules/es.object.to-string; import core-js/modules/es.set; var set = new Set([1, 2, 3]); // second file: import core-js/modules/es.array.of; var array = Array.of(1, 2, 3);
更多详情大家可以去GitHub参考:地址就在上方
