首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏日积月累1024

    ES6中的export与import入门

    例1:有选择的import math.js function add(a, b){ return a+b; } function sub(a, b){ return a-b; } const /math.js'; console.log(MIN); console.log(add(1,2)); 使用rollup进行组装测试(组装的方式很多,rollup只是其中一种,关于rollup的简单使用 /math.js'; console.log(mathlib.MIN); console.log(mathlib.add(1, 2)); rollup组装后的代码与例1完全一致。 /math.js'; console.log(myadd(1,2)); console.log(mymax); 2.2 default导出 defalut可以导出匿名函数, 当然也可以导出变量和函数。 /math.js'; console.log(k(1,2,3)); console.log(add(1, 2)); 3. 参考 http://es6.ruanyifeng.com/?

    74530发布于 2020-12-07
  • 来自专栏前端自习课

    【Webpack】241-Webpack 是怎样运行的?

    /utils/math.js'; console.log('Hello webpack!') /src/utils/math.js": (function() { // ... }) }); IIFE 传入的 modules 对象里多了一个键值对,对应着新模块 src/utils/math.js /utils/math.js';` 语句被 loader 解析转化。 // 加载 ". /src/utils/math.js") 拿到了工具模块的 exports 对象。 /src/utils/math.js” 模块。

    1.1K20发布于 2019-07-25
  • 详解JavaScript 中 `import` 语句的完整指令格式

    import defaultExport from 'module-name'; 假设我们有一个名为 math.js 的模块文件,其中包含一个默认导出: // math.js export default /math.js'; console.log(add(2, 3)); // 输出: 5  这里,add 是我们为默认导出选择的名字。 /math.js'; console.log(myAddFunction(2, 3)); // 输出: 5  这里,您给被导入模块的默认导出内容指定的任何名称来引用它,`module-name` 是模块的文件名或路径 示例 假设有一个模块 `math.js`,内容如下: // math.js export const add = (a, b) => a + b; export const subtract = (a,

    80300编辑于 2025-04-05
  • 来自专栏前端萌媛的成长之路

    JavaScript模块化发展

    ') // .script(['a.js', 'b.js', 'c.js', 'math.js']) // 同时加载所有的js文件 .wait(function() { // 等所有的 // math.js var count1 = 2; global.count2 = 5; // use.js console.log(count1); // count1 is not defined // math.js var count = 5; function add(val) { return count + val; } module.exports = { count, add // math.js var count = 5; function add(val) { return count + val; } module.exports = { count, add math math.js math.json math.node 把math当成文件并没有找到的时候,就会将math当成文件夹,并去依此寻找他下面的这些文件。

    1.8K30发布于 2018-05-25
  • 来自专栏Elson's web

    从webpack4打包文件说起

    /math.js').then(() => {console.log('math loaded!') ;}); // 通过注释指定异步chunk的名字 console.log(name); // name.js 与 math.js各自无其他依赖 希望做到: 抽离webpack的runtime代码 抽离公共代码 /src/esmodules/math.js")) .then(() => {console.log('math loaded!')}) ; 以math.js为例,我们在源码中通过import('math.js')标识其为需要按需加载的chunk。 整个math.js的异步加载过程需要结合webpackJsonpCallback进行理解。

    3.2K91发布于 2018-08-01
  • 来自专栏Nodejs技术栈

    前端模块化:CommonJS,AMD,CMD,ES6

    // 定义模块math.js var basicNum = 0; function add(a, b) { return a + b; } module.exports = { //在这里写上需要向外暴露的函数 // 定义math.js模块 define(function () { var basicNum = 0; var add = function (x, y) { return /b'); b.doSomething(); } }); /** sea.js **/ // 定义模块 math.js define(function(require, exports var add = function(a,b){ return a+b; } exports.add = add; }); // 加载模块 seajs.use(['math.js /** 定义模块 math.js **/ var basicNum = 0; var add = function (a, b) { return a + b; }; export { basicNum

    1.5K40发布于 2020-08-20
  • 来自专栏404

    前端模块化:CommonJS,AMD,CMD,ES6

    // 定义模块math.js var basicNum = 0; function add(a, b) { return a + b; } module.exports = { //在这里写上需要向外暴露的函数 // 定义math.js模块 define(function () { var basicNum = 0; var add = function (x, y) { return /b'); b.doSomething(); } }); /** sea.js **/ // 定义模块 math.js define(function(require, exports var add = function(a,b){ return a+b; } exports.add = add; }); // 加载模块 seajs.use(['math.js /** 定义模块 math.js **/ var basicNum = 0; var add = function (a, b) { return a + b; }; export { basicNum

    75420编辑于 2022-04-25
  • 来自专栏Super 前端

    source map 你知道多少?-- 调试、原理、渗透、还原源码

    /math.js" ], "sourceRoot": "", "names": [ "add" ], "mappings": "..." } math.js (源文件) function add (param1, param2) { return param1 + param2; } 在 a.js 打断点会自动跳到 math.js 中 通过 source map 还原源代码

    3.3K21发布于 2021-08-31
  • 来自专栏前端 TS/JS 核心讲堂

    详解JavaScript 中 `export ` 语句的完整指令格式

    Rectangle }; // 默认导出 export default function multiply(a, b) { return a * b; } 导入导出示例 导入命名导出 假设我们有一个模块 `math.js `: // math.js export const PI = 3.14159; export function add(a, b) { return a + b; } export class Rectangle /math.js'; console.log(PI); // 输出: 3.14159 console.log(add(2, 3)); // 输出: 5 const rect = new Rectangle

    1K10编辑于 2025-04-05
  • 来自专栏前端技术总结

    一览js模块化:从CommonJS到ES6

    /moduleA'); 实例: //math.js var num = 0; function add(a, b) { return a + b; } module.exports = { // /math'); math.add(1, 2)//3 实际上,从上面的例子就可以看出,math.add(1,2)必须要等待math.js加载完成,即require是同步的。 dep) { return exports; }); // 导入和使用 require(['module'], function (module) { }); 上面示例中的代码改写成AMD形式: math.js { var add = function (a, b) { return a + b; } exports.add = add; }) //导入和使用 seajs.use(['math.js 上面示例中的代码改写成ES6形式: //math.js var num = 0; var add = function (a, b) { return a + b; }; export { num,

    4.3K652发布于 2018-12-22
  • 来自专栏趣学前端

    JavaScript 源映射解读:从压缩代码到可读源码的转换解密

    /math.js';exportfunctioncalculateTotal(...numbers){...}","import{calculateTotal}from'. 第二个值0:使用sources数组中的第0个源文件(src/math.js)。第三个值0:在源文件的第0行(行号从0开始)。第四个值9:在源文件的第9列。 HTTP响应头JavaScript文件请求的响应头中包含:SourceMap:/path/to/bundle.min.js.map5.2调试器中的映射过程当你在开发者工具中调试时:打开源文件:你点击src/math.js 反向映射:调试器将原始位置(math.js,3,10)通过源映射转换为压缩代码位置(bundle.min.js,1,15432)。执行监控:浏览器在压缩代码的15432字符处设置实际断点。 15432)atr(bundle.min.js:1:16789)ati(bundle.min.js:1:19876)//2.应用源映射后Error:Somethingwentwrongatadd(src/math.js

    39520编辑于 2025-11-13
  • 来自专栏漫话前端

    浏览器已原生支持 ES 模块,这对前端开发来说意味着什么?

    // lib/math.js export function sum(x, y) { return x + y; } export let pi = 3.141593; export const /lib/math.js'; import { pi, PI, epsilon } from '. /lib/math.js'; // 此时 oneTwoThree 为 123 第二种为 import * 方式导入 default 与其他变量。 import * as allDeps from '. 第一行 import 语句时去加载依赖模块 math.js。 例如我们的代码中 app.js 定义了函数 sum,math.js 定义了常量 PI,如果打开 Console 输入 PI 或 sum 浏览器会产生 ReferenceError 报错。

    3.2K80发布于 2018-07-06
  • 来自专栏艺述论专栏

    关于 JS 模块化的最佳实践总结

    使用 CommonJS 规范的代码示例如下: // 定义模块math.js var basicNum = 0; function add(a, b) { return a + b; } module.exports 代表underscore var sum = math.add(10,20); $("#sum").html(sum); }); 而用于模块的定义,在其它 JS 文件中是这样声明的: // 定义math.js 使用 sea.js 定义和使用模块的示例如下所示: /** sea.js **/ // 定义模块 math.js define(function(require, exports, module) { 示例如下: /** 定义模块 math.js **/ var basicNum = 0; var add = function (a, b) { return a + b; }; export /math'; function test(ele) { ele.textContent = add(99 + basicNum); } 在上面的代码中,使用 export 关键字在 math.js

    2.8K10发布于 2019-09-02
  • 来自专栏前端小叙

    es6 如何一行代码直接导入并同时导出文件中的方法

    /math.js';

    45240编辑于 2023-11-02
  • 来自专栏Super 前端

    前端打包工具Esbuild--模块化、ESM、esbuild-loader、

    /math.js' let result = add(1,2) console.log(result) math.js const add = function (p1, p2) { return return p1 - p2; } export { add, sub } 构建: $ npx esbuild src/index.js --bundle 结果: (() => { // src/math.js /math.js' console.log(add(3,4)) 结果 import { add } from ". /chunk-2YHQ3R6P.js"; // main.js console.log(add(3, 4)); chunk-2YHQ3R6P.js // math.js var add = function

    4.6K31发布于 2021-08-31
  • 来自专栏JAVA

    如何有效地组织和管理自己的代码?

    // math.js export function add(a, b) { return a + b; } // app.js import { add } from '. /math.js'; console.log(add(2, 3)); // 输出 5 3. 命名规范 良好的命名规范能够使代码更具可读性。

    46010编辑于 2024-11-20
  • 来自专栏全栈程序员必看

    推荐15个月 Node.js 开发工具

    Math.js Math.js is an extensive math library for JavaScript and Node.js.

    1.4K20编辑于 2022-07-06
  • 来自专栏前端开发

    JavaScript编码之路【ES6新特性之模块化】

    自创模块的导入导出 我们来看看他的第一件装备:module.exports 我们有两个模块,一个是math.js,用于进行数学运算,另一个是app.js,用于调用math.js中的函数。 首先,创建一个名为math.js的文件,并在其中定义一些数学函数: math.js 它有 add 和 subtract 这两个超能力 加法函数 function add(a, b) { return - b } 然后我们把这些超能力暴露出去,让别人也可以得到这些超能力 module.exports = { add: add, subtract: subtract } app.js 引入math.js

    36010编辑于 2024-03-20
  • 来自专栏coding for love

    4-1 Tree Shaking 概念详解

    使用场景 我们看如下使用场景,主模块 index.js 中引用了一个辅助模块 math.js 中的一个方法。 // index.js import { add } from '. /math'; add(1, 2); // math.js export const add = (a, b) => { console.log(a + b); }; export const

    1.3K20发布于 2020-02-19
  • 来自专栏code秘密花园

    CommonJS 和 ES Module 终于要互相兼容了???

    CommonJS 模块的特点是同步加载,这意味着代码会在模块被加载完成后立即执行: // math.js function add(x, y) { return x + y; } module.exports /math.js'); console.log(math.add(0, 17)); // 打印出 17 在服务器环境中,同步加载通常不是问题,因为文件大都在本地。 ESM 使用 import 和 export 语句进行模块的导入和导出,支持异步加载: // math.js export function add(x, y) { return x + y; } /math.js'; console.log(add(0, 17)); // 打印出17 ESM 的设计允许浏览器优化加载和解析过程,如通过 HTTP/2 进行有效的并行加载,以及进行 tree shaking

    1.1K10编辑于 2024-04-03
领券