模块化编程-requirejs

模块化编程:
 
如何在实际开发过程中,解决变量名冲突?
早期是通过:
给变量名添加前缀
放入对象中
放入一个自执行的函数
目前最好的方法是: 使用模块化开发。
早期的三种方式解决变量名冲突,但是这三种都有缺陷,其中前两种,变量名和对象名,虽然说几率小,但是还是会有一定几率会重复,第三种的话,放在一个自执行函数中,只会有两种情况:当函数执行完毕,里面的数据就无法取出。或是函数一直执行,但是这样的话数据就一直存在在内存里面,非常消耗性能的。
综和后两种方法的缺点,我们发现 模块化开发能完美的避免对象名冲突,以及函数中变量无法随用随取的缺点。
我们只需要在一个单独的js 文件中进行变量和方法的定义,在需要引用这里面的变量时,就通过require 属性,把这个js 文件变成一个对象的形式进行引入。这样我们就可以通过对象的方式,调用到该js 文件中的变量和方法,从而避免了变量名冲突。
 
js 文件中进行其他 js 文件引入的方法:
1 ,先在被引用的js 文件中,把js 文件透过exports 属性开一个口,使其他js 文件能够通过require 属性访问到。
2 ,在当前js 文件中通过require 方法引入暴露出的js 文件,并将其赋值给一个变量,该变量就代表了被引用的js 文件暴露出的{list:list,get:get} 这个对象,暴露出的是什么,引用过来的就是什么,一般都是以对象的形式暴露出数据,并且只要被引用的文件中跟list 或是get 有关的数据,就都能获取到。(注意: 引入文件时前面的 ./ 是必加的 ,并不是去到上一层)
 
 
模块化开发:
         模块化开发是由commenjs 规范提出的,但是commenjs 规范不支持浏览器,所以我们需要通过一些手段,比如说requirejs seajs angular…. 来实现模块化开发并兼容浏览器,同时,我们还可以通过一些前端构建工具来对我们的文件进行编译,从而实现模块化。
         后端语言中,node.js 全面支持commenjs 规范
         模块化构建工具:webpack gulp grunt 等也是支持commenjs 规范。
       这里我们主要来了解一下通过一些固定的手段来完成模块化,完成模块化的手段一般分三个:
         首先,模块化编程有三种规范,AMD,CMD,UMD ,其中:
         AMD
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值