作用域

es6里模块化的写法

会存在的问题,变量、方法名字雷同,外部文件调用的时候出现问题

如 a.js里

var a='susan'

b.js里

var a='jack'

问题解决方案,添加包裹

a.js

var a={ name:'susan' }

b.js

var a={ name:'jack' }

调用的时候可以使用console.log(a.name);

以上方法可以解决避免冲突,但是问题是其他文件会更改覆盖原数据的问题

如: b.name='aotoname'

再次使用b.name的值的时候,值就变了,多人开发的时候出现不必要的麻烦

怎么解决??

`var susanModule=(function(){

var name='susan',

var sex='女',

return{

tel:function(){

console.log(sex)

}

}

}

})()`

浏览器里susanModule.tel(); 以上方法模块的实现方法



更为标准的写法,直接放在立即执行函数上,模块化也是对作用域的封装,重用性更高,耦合性更低(解除耦合性)

通过接口的方式,把数据暴露出去,供大家使用,其他人也改变不了我的数据

例如网站上的搜索功能,只写一个搜索功能,其他需要的位置,直接调用我的搜索功能就行,前端工作量减少,而且维护成本降低

js的作用域和闭包的升级,演变到模块化方案

经过了AMD ,commonJS,![]

**AMD **



commonJS,



es6 Module

(https://img2020.cnblogs.com/blog/429510/202101/429510-20210119105149247-39884712.png)

webpack

  1. 安装node

    node -v

    npm -v

    命令查看版本

    2.新建文件夹,初始化项目

    npm init

3。运行项目

npm run test



看这里

4.镜像包

npm config set registry https://registry.npm.taobao.org

npm install loadash --sava (-s 报错版本号在package.json里)

npm install --only=prod (指定生成环境)

npm install --only=dev (指定开发环境)

5.版本号

webpack知识点整理的更多相关文章

  1. web前端面试知识点整理

    一.HTML5新特性 本地存储 webStorage websocket webworkers新增地理位置等API对css3的支持canvas多媒体标签新增表单元素类型结构标签:header nav ...

  2. ACM个人零散知识点整理

    ACM个人零散知识点整理 杂项: 1.输入输出外挂 //读入优化 int 整数 inline int read(){ int x=0,f=1; char ch=getchar(); while(ch& ...

  3. Android 零散知识点整理

    Android 零散知识点整理 为什么Android的更新试图操作必须在主线程中进行? 这是因为Android系统中的视图组件并不是线程安全的.通常应该让主线程负责创建.显示和更新UI,启动子线程,停 ...

  4. vue前端面试题知识点整理

    vue前端面试题知识点整理 1. 说一下Vue的双向绑定数据的原理 vue 实现数据双向绑定主要是:采用数据劫持结合发布者-订阅者模式的方式,通过 Object.defineProperty() 来劫 ...

  5. kafka知识点整理总结

    kafka知识点整理总结 只不过是敷衍 2017-11-22 21:39:59 kafka知识点整理总结,以备不时之需. 为什么要使用消息系统: 解耦 并行 异步通信:想向队列中放入多少消息就放多少, ...

  6. JSP页面开发知识点整理

    刚学JSP页面开发,把知识点整理一下. ----------------------------------------------------------------------- JSP语法htt ...

  7. JS知识点整理(二)

    前言 这是对平时的一些读书笔记和理解进行整理的第二部分,第一部分请前往:JS知识点整理(一).本文包含一些易混淆.遗漏的知识点,也会配上一些例子,也许不是很完整,也许还会有点杂,但也许会有你需要的,后 ...

  8. css入门知识点整理

    css入门知识点整理 不要嘲笑我这个蒟蒻..例子来源:w3school css其实就分为两个东西,一个是选择器,另外一个是声明.声明定义了某个对象的属性的值,这都是html的内容.重点要关注的是选择器 ...

  9. activity生命周期知识点整理

    activity生命周期知识点整理 Activity: 是一个应用组件,用户可与其提供的屏幕进行交互.窗口通常会充满屏幕,但也可以小于屏幕并浮动在其他窗口之上. 一个activity的什么周期: 启动 ...

随机推荐

  1. Hive JDBC执行load时无法从本地加载数据

    通过hive-jdcv连接hive server,在应用服务端执行以下命令,报错:Hiver Server节点上找不到data.txt load data local inpath '/home/dw ...

  2. DP-DAY3游记

    问题 A: 2017夏令营第一阶段(Day3)问题A拆分数字I 题目描述    把数字N拆分一些正整数的和,问有多少种不同的方法? 例如:N=4,有1+1+1+1.1+1+2.1+2+1.1+3.2+ ...

  3. 跟我一起学Redis之高可用从主从复制开始

    前言 现在遇到高并发场景时,缓存技术应该算是性能优化的第一步,缓解数据库压力的同时还能提高访问效率,而Redis应该是绝大多数应用场景的首选.但是尽快Redis性能再优秀,在当今高并发场景下,一台服务 ...

  4. RabbitMQException com.rabbitmq.client.ShutdownSignalException: connection error; protocol meth

    异常1 org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ...

  5. rocketMq 消息偏移量 Offset

    消息偏移量 Offset queue0 offset 0   0-20  offset 4  20-40 纠错:每条消息的tag对应的HashCode. queue1 offset 1  0-20   ...

  6. exp(cos(t)) - 2*cos(4.*t) + (sin(t./12)).^5;图形

    clc; clear all; close all; t = linspace(0,24*pi,1000); r = exp(cos(t)) - 2*cos(4.*t) + (sin(t./12)). ...

  7. C# 两个时间相减 计算两个时间差(年月日时分秒)

    DateTime dt1; DateTime dt2; int days=(dt2.Date-dt1.Date).Days;   或者 TimeSpan ts = dt2 -dt1;          ...

  8. python初学者-使用for循环做一个九九乘法表

    for i in range(1, 10): for j in range(1, i + 1): print(j, '*', i, '=', i * j, end=" ") #en ...

  9. xxfpmW 的诞生过程

    最近因为在win 服务器搭建php服务,发现php-cgi.exe 很容易崩溃,看cpu和硬盘都没有暴涨,也不知道啥原因,网上查发现有一款xxfpm 小应用可以解决这个问题,但这个应用是2011年开发 ...

  10. intellij idea svn不能更新和提交

    进入设置–version control – subversion如下图,将前边的选项的勾全部去掉,点击ok