JS模块化

1.开发一个模块管理引擎

let module1 = (function(){
  let moduleList = {}

  function define(name, modules, action){
    modules.map((m, i) => {
      modules[i] = moduleList[m]
    })
    moduleList[name] = action.apply(null, modules)
    console.log(moduleList)

  }
  return {define}
})()
module1.define('hd', [], function(){
  return {
    first (arr) {
      return arr[0]
    },
    max(arr) {
      return arr.sort((a,b) => b-a)[0]
    }
  }
})
module1.define('lesson',['hd'], function(hd){
  console.log(hd, 'ddd')
})

2.模块延时解析与严格模式

//默认严格模式
//延时解析
  <!DOCTYPE html>
  <html lang="en">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script type="module">
      console.log(document.querySelector('button')) // button
      today = '5.3' // 报错
    </script>
  </head>
  <body>
    <button>五一快乐</button>
  </body>
  </html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值