ES6入門---第二單元 模塊五:模塊化

js不支持模塊化

注意: 需要放到服務器環境

1、如何定義模塊?

export? 東西

例:1.js文件中

console.log('1模塊加載了');//顯示是否加載了
export const a =12;
export const b = 5;
export let c = 101;
const a=12;
const b=5;
const c=101;export {//可以起別名 as *** 也可以去掉a as aaa,b as banana,c as cup
}

 <script type="module">import {a, b, c} from './modules/1.js';console.log(a,b,c);</script>

起別名版import :

<script type="module">import {aaa, banana, cup} from './modules/2.js';console.log(aaa, banana, cup);</script>

補充?export?default **? 作用:引用時候可以不用加{ }

2、如何使用?
?在html文件里<script type="module"></script>

引入模塊

import './modules/1.js';

【新增】*表示引用全部

 <script type="module">import * as modTwo from './modules/2.js';console.log(modTwo.aaa);</script>
 <script type="module">import mod,{show, sum, a, b} from './modules/4.js';
// show sum 是函數 let p1 = new mod.Person('老肖');console.log(p1.showName());show();sum();console.log(a,b);</script>

js文件可以引用另一個js文件里的東西 :格式同理

import:? 特點
?? ??? ?a). import 可以是相對路徑,也可以是絕對路徑
?? ??? ??? ?import 'https://code.jquery.com/jquery-3.3.1.js';
?? ??? ?b). import模塊只會導入一次,無論你引入多少次
?? ??? ?c). import './modules/1.js';? 如果這么用,相當于引入文件
?? ??? ?d). 有提升效果,import會自動提升到頂部,首先執行

? ? ? ? ? ? ?也就是說:不管放前面放后面都最先引入
?? ??? ?e). 導出去模塊內容,如果里面有定時器更改,外面也會改動

? import() ?類似node里面require, 可以動態引入, 默認import語法不能寫到if、for之類里面

錯誤例:

 if(a==12){import {a} from './modules/1.js';}else{import {b} from './modules/2.js';}

正確例:
?? ??? ?返回值是個promise對象?

<script type="module">import('./modules/1.js').then(res=>{console.log(res.a+res.b);});</script>

?路徑也可以動態

 <script type="module">let sign=1;function config(){switch(sign){case 1:return './modules/1.js';break;case 2:return './modules/2.js';break;}}import(config(1)).then(res=>{$(function(){$('body').css({background:'gray'})})});</script>

與promise結合版:

<script type="module">Promise.all([import('./modules/1.js'),import('./modules/2.js')]).then(([mod1,mod2])=>{console.log(mod1);console.log(mod2);})</script>

【ES2017】async ?await

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/79643.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/79643.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/79643.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

14.Excel:排序和篩選

一 位置 兩個位置。 二 排序&#xff1a;如何使用 1.常規使用 補充&#xff1a;不彈出排序提醒排序。 選中要排序列中的任意一個單元格&#xff0c;然后排序。 2.根據要求進行排序 1.根據姓名筆畫進行降序排序 要勾選上數據包含標題&#xff0c;默認是勾選了。 2.根據運營部、…

嵌入式系統基礎知識

目錄 一、馮諾依曼結構與哈佛結構 &#xff08;一&#xff09;馮諾依曼結構 &#xff08;二&#xff09;哈佛架構 二、ARM存儲模式 &#xff08;一&#xff09;大端模式 &#xff08;二&#xff09;小端模式 &#xff08;三&#xff09;混合模式 三、CISC 與 RISC &am…

CSS 預處理器 Sass

目錄 Sass 一、Sass 是什么&#xff1f; 二、核心功能詳解 1. 變量&#xff08;Variables&#xff09; 2. 嵌套&#xff08;Nesting&#xff09; 3. 混合宏&#xff08;Mixins&#xff09; 4. 繼承&#xff08;Inheritance&#xff09; 5. 運算&#xff08;Operations&…

信息收集新利器:SSearch Chrome 插件來了

SSearch 下載地址 SSearch &#x1f623;用途 每次谷歌語法搜索時還得自己寫&#xff0c;我想省事一點&#xff0c;弄了一個插件&#xff0c;先加了幾個常用的語法&#xff0c;點擊后會跳轉到對應搜索頁面&#xff0c;也可以直接在搜索框微調 后續也會加些其他語法 &#…

Docker搭建SFTP

在這個教程中&#xff0c;我們將通過一個簡單的例子來展示如何使用 Docker 和 atmoz/sftp 鏡像設置一個基本的 SFTP 服務。這個服務將允許用戶通過 SFTP 安全地訪問和管理文件。我們將配置一個名為 ops 的用戶&#xff0c;其密碼為 123456&#xff0c;并限定用戶只能訪問特定的…

正態分布習題集 · 答案與解析篇

正態分布習題集 答案與解析篇 與題目篇編號一致,如有其他解題思路,歡迎在評論區交流。 1. 基礎定義與性質 1.1 密度函數 X ~ N ( μ , σ 2 ) X \sim N(\mu,\sigma^2) X~N(μ,σ2) 的 PDF: [ f(x) = \frac{1}{\sigma\sqrt{2\pi}} \exp\left(-\frac{(x-\mu)2}{2\sigma2}\…

Java學習手冊:SQL 優化技巧

一、SQL 查詢優化 選擇合適的索引列 &#xff1a;索引可以顯著提高查詢速度&#xff0c;但需要選擇合適的列來創建索引。通常&#xff0c;對于頻繁作為查詢條件的列、連接操作的列以及排序或分組操作的列&#xff0c;應該考慮創建索引。例如&#xff0c;在一個訂單表中&#xf…

(02)Redis 的訂閱發布Pub/Sub

我們為了自己實現一個MQ功能&#xff0c;就要深入底層挖掘現有開源產品的實現過程。 Redis 發布訂閱底層結構解析 Redis 不存儲消息&#xff0c;僅作為“實時中轉”&#xff1b;只有訂閱者在線時才能收到消息&#xff1b;消息是廣播給所有訂閱此頻道的客戶端。 1. 核心數據結…

使用Docker一鍵安裝SigLens:簡單快捷的日志分析解決方案

在當今復雜的IT環境中,高效的日志管理和分析變得越來越重要。SigLens作為一款強大的開源日志分析工具,為開發者和運維人員提供了直觀、高效的日志處理體驗。本文將介紹如何使用Docker快速安裝SigLens,讓您在幾分鐘內就能開始進行日志分析。 為什么選擇Docker安裝SigLens? Do…

C#與西門子PLC通信:S7NetPlus和HslCommunication使用指南

西門子S7協議是用來和PLC進行通訊的一個協議&#xff0c;默認端口是102&#xff0c;數據會保存在一個個DB塊中&#xff0c;比較經典的用法是一個DB塊專門用來讀取&#xff0c;一個用來寫入。 DB&#xff08;數據塊&#xff09; {塊號}.DBX/DBD/DBW{字節地址}.{位偏移} 1、數據…

【中間件】brpc_基礎_remote_task_queue

文章目錄 remote task queue1 簡介2 核心功能2.1 任務提交與分發2.2 無鎖或低鎖設計2.3 與 bthread 深度集成2.4 流量控制與背壓 3 關鍵實現機制3.1 數據結構3.2 任務提交接口3.3 任務竊取&#xff08;Work Stealing&#xff09;3.4 同步與喚醒 4 性能優化5 典型應用場景6 代碼…

C語言實現數據結構:堆排序和二叉樹_鏈式

一.堆的應用 1.堆排序 void test01() {int arr[] { 17,20,10,13,19,15 };int n sizeof(arr) / sizeof(arr[0]);HP p;HPInit(&p);for (int i 0; i < n; i){HPPush(&p, arr[i]);}int i 0;while (!HPEmpty(&p)){arr[i] HPTop(&p);HPPop(&p);}for (i…

C和指針——預處理

預處理是編譯前的過程&#xff0c;主要對define&#xff0c;include以及一些編譯器定義的內容進行替換 #define的本質就是替換 1、例子 #define FOREVER for(;;) 2、例子 #define TEMPD "1231231231\ 123123123" \\如果太長了&#xff0c;可以用\換行 3、例子——可…

C++ set和map

目錄 一、關聯式容器 1.1 鍵值對 1.1.1 概念 1.1.2 pair 1.2 樹形結構的關聯式容器 二、set 2.1 set 的介紹 2.2 set 的使用 2.2.1 set 的構造 2.2.2 set 的迭代器 2.2.3 set 的容量操作 2.2.4 set 的修改操作 2.2.5 set 的查找操作 三、multiset 3.1 multiset …

「Mac暢玩AIGC與多模態07」開發篇03 - 開發第一個 Agent 插件調用應用

一、概述 本篇介紹如何在 macOS 環境下,基于 Dify 平臺自帶的網頁爬蟲插件工具,開發一個可以提取網頁內容并作答的 Agent 應用。通過使用內置插件,無需自定義開發,即可實現基本的網頁信息提取與智能體回答整合。 二、環境準備 1. 確認本地部署環境 確保以下環境已搭建并…

cline或業務系統集成n8n的工作流(MCP Server Trigger、Call n8n Workflow Tool node)

1.成果展示 1.1n8n的主工作流 1.2n8n的子工作流 1.3cline集成效果 2.實操過程 2.1Call n8n Workflow Tool node節點 Call n8n Workflow Tool節點是一個工具&#xff0c;它允許代理運行另一個n8n工作流并獲取其輸出數據。 在此頁面上&#xff0c;您將找到“調用n8n工作流工具…

深入了解Linux系統—— 環境變量

命令行參數 我們知道&#xff0c;我們使用的指令它本質上也是一個程序&#xff0c;我們要執行這個指令&#xff0c;輸入指令名然后回車即可執行&#xff1b;但是對于指令帶選項&#xff0c;又是如何實現的呢&#xff1f; 問題&#xff1a;main函數有沒有參數&#xff1f; 在我…

pip安裝包時網絡不暢,替換國內PyPI鏡像源

1、PyPI 鏡像源 1.1、定義 PyPI 鏡像源是對 Python Package Index&#xff08;PyPI&#xff09;官方倉庫的復制。 PyPI 是 Python 社區中最大的軟件包倉庫&#xff0c;存儲著大量的 Python 包&#xff0c;供開發者們下載和使用。 然而&#xff0c;由于 PyPI 服務器位于國外&a…

貪心算法解決會議安排問題

文章目錄 前言 一、什么是貪心算法&#xff1f; 貪心算法的基本概念&#xff1a;貪心算法并不從整體最優上加以考慮&#xff0c;所做的選擇只是在某種意義上的局部最優選擇。 二、會議安排題目 1.題目理解 2.思路剖析 總結 前言 本文將主要介紹貪心算法需要注意的地方以…

從入門到登峰-嵌入式Tracker定位算法全景之旅 Part 4 |IMU 死算與校正:慣性導航在資源受限環境的落地

Part 4 |IMU 死算與校正:慣性導航在資源受限環境的落地 本章聚焦 ESP32-S3 平臺上如何利用 LSM6DS3 IMU 實現 死算(Dead Reckoning),并結合 零速更新(ZUPT) 或 磁力計輔助 進行 漂移校正,最終通過 EKF/UKF 融合提升定位精度。 一、傳感器簡介與校準 LSM6DS3 主要參數 加速…