ES-Module基本特性

2021年9月26日 1点热度 0条评论 来源: ZhandsomeZ

开门见山
本篇文章主要是给大家带来关于ESmodule的相关介绍
1、自动采用严格模式,忽略“use strict”
<script type="javascript"> console.log(this)// => windows </script>

<script type="module"> console.log(this)// => undefined </script>
2、每个ESM模块都是单独的自有作用域
<script type="javascript">
	let a  = 10
	console.log(a)// => 10
</script>

<script type="module">
	console.log(a)// => 直接报错未定义 这样就解决了作用域污染的问题
</script>
3、ESM是通过CORS去请求外部的JS模块
外部js文件通过cors请求的,如果请求的地址不在同源的话,那么服务端的响应头包含提供有效cors标头,
如果没有的话直接出现跨域问题

cors不支持文件的形式访问,必须是http Sever方式的请求,在实际开发过程中肯定都是http Sever方式的
4、ESM是script标签会延迟执行脚本
demo.js 内容如下

alert(20)

<script type="module" src="./demo.js"> console.log(this)// => windows </script>

<p> es module </p>

实际效果是p标签可以正常显示,也就表示ES module 是延迟加载的

谢谢观看

    原文作者:ZhandsomeZ
    原文地址: https://blog.csdn.net/handsomezhanghui/article/details/107844252
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。