- 博客(27)
- 收藏
- 关注
原创 webpack4
webpack标签(空格分隔): webpackWebpack 是一个前端资源加载/打包工具。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源。webpack4新特性1.mode属性webpack需要设置mode属性,可以是development或production。例如:webpa --mode developmentWebpack针对开发者...
2019-11-17 15:35:44
199
原创 模块化
模块化JavaScript用“共享一切”的方法加载代码,这是该语言中最容易出错且容易令人感到困惑的地方。其他语言使用诸如包这样的概念来定义代码作用域,但在ECMAScript6以前,在应用程序的每一个JavaScript中定义的一切都共享一个全局作用域。随着Web应用程序变得更加复杂,JavaScript代码的使用量也开始增长,这一做法会引起问题,如命名冲突和安全问题。ECMAScript6的一...
2019-07-29 21:27:02
211
1
原创 初次认知 webpack 曲折之路
初次尝试安装webpack安装步骤npm install -g webpack在这里我遇到了第一个坑Error: EPERM: operation not permitted, open 'D:\node.js\webpack' npminstall version: 3.20.2 npminstall args: D:\node.js\node.exe C:\Users\yutin...
2019-07-29 21:26:00
180
原创 对象
对象语言发展简史机器语言 -> 汇编语言 -> 低级语言(面向过程)->高级语言(面向对象) -> 模块系统 -> 框架 -> 系统接口(API)es5和es6的对象在es6中的面相对象与es5中的面向对象的区别是极大的,ea6中的面相对象则更像java,c++等,而且在es5中的class保留字,在es6中也成了实际有效的关键字。面向对象特点...
2019-07-29 21:25:36
117
原创 变量的解构赋值
数组的解构赋值基本用法ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这称为解构。es6允许将变量赋值写成这样let[a,b,c] = [1,2,3];。表示从数组中提取值,按照对应位置,对变量赋值。本质上这种写法属于“模式匹配”,只要等号两边模式相同,左边的变量就会被赋予对应的值。let [x, , y] = [1, 2, 3];x // 1y // 3let [h...
2019-03-27 22:15:29
144
原创 #vue实例
每个Vue应用都是通过Vue函数创建一个新的Vue实例开始的var vm = new Vue({ //})数据与方法当一个Vue实例被创建时,会将data中所有的属性加入到Vue的响应式系统中。当这些属性的值发生改变时视图会产生“响应”,即匹配成为新的值。当这些数据改变时,视图会进行重渲染。值得注意的是只有当实例被创建时data中存在的属性才是响应式的。也就是说如果你添加一个新的...
2019-03-27 22:13:46
103
原创 vue 介绍
声明式渲染Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统:<div id="app"> {{ message }}</div>var app = new Vue({ el: '#app', data: { message: 'Hello Vue!' }})v-bind指令带有前缀 v-,以表示它...
2019-03-26 21:09:19
252
原创 let 和 const 命令
ECMAScript 和 JavaScript 的关系前者是后者的规格,后者是前者的一种实现(另外的 ECMAScript 方言还有 JScript 和 ActionScript)let基本用法用来声明变量。它的用法类似于var,但是所声明的变量只在let命令所在的代码块内有效。function test(){let a = 1;var b = 2;}a //Uncaug...
2019-03-25 21:31:47
141
原创 负边距式布局
负边距式布局所谓的负边距就是margin取负值的情况,如margin:-100px,margin:-100%。当一个元素与另一个元素margin取负值时将拉近距离。在网页的布局当中,负边距起到了很大的作用。文章目录负边距式布局利用负边距形成的三栏布局利用负边距去除块级元素中间的间隙去除列表最后一个li元素的border-bottom水平垂直居中利用负边距形成的三栏布局三栏布局即两边宽度...
2019-02-26 23:02:21
310
原创 双飞翼布局
双飞翼布局双飞翼布局: 同圣杯布局一样,要求三栏布局,中间宽度自适应,两边定宽,允许任意列高度最高。这样做的优势是重要的东西放在文本流前面可以优先渲染。body部分如下 <div class="middle"> <div class="innerbox">//注意这里 <h4>我是...
2019-02-24 22:50:50
197
原创 上传图片以及文件的方法--multer
multermulterMulter 是一个 node.js 中间件,用于处理 multipart/form-data 类型的表单数据,它主要用于上传文件。注意: Multer 不会处理任何非 multipart/form-data 类型的表单数据。标签内设置属性 enctype=multipart/form-data是必须的,这样才可以上传文件,方式为post。 <form ...
2019-02-24 18:00:52
873
原创 模板引擎
模板引擎作用:生成页面jade - 破坏式,侵入式,强依赖·const jade = require('jade');var str = jade.render('html');var str = jade.renderFile('文件路径',{pretty:true});console.log(str);//语法根据缩进规定层级属性放在括号里面,用逗号隔开script...
2019-02-24 17:59:15
153
原创 cookie session
cookie sessionhttp —— 无状态的(两次请求之间服务器无法识别是否同一个人)cookie: 在浏览器(客户端)保存一些数据,每次向服务器发起请求的时候都会带过来*保存在客户端的东西,是不安全的,大小是有限(4kb)session: 保存数据用,功能上跟cookie没有区别。*保存在服务端(安全级别跟数据库差不多),安全,不限制大小。session原理: 基于co...
2019-02-24 17:57:39
173
原创 圣杯布局
圣杯布局圣杯布局: 要求三栏布局,中间宽度自适应,两边定宽,允许任意列高度最高。这样做的优势是重要的东西放在文本流前面可以优先渲染。按照常规的想法我们先写三个div在页面当中,分别起名为middle,left,right//body中的内容 &amp;lt;div class=&quot;container&quot;&amp;gt; &amp;lt;div class=&quot
2019-02-24 17:50:46
179
原创 Node.js 模块化
Node.js 模块化标签(空格分隔): Node.JsJavaScript代码被载入网页同时就会被添加进全局名称空间,所以存在一定的安全问题,而Nodejs为服务端的JS制定了一些规范并实现了CommomJs模块标准:模块化nodejs在执行过程当中默认给每个模块都添加了上下文,所以模块不会污染全局作用域————不存在全局变量//默认在使用模块时加个东西(不存在全局变量)(fun...
2019-01-29 18:53:58
171
原创 Node.js 基础知识
Node.Js简介说起node,主要特点是单线程非阻塞事件驱动在更复杂的层面上来看node是js的一个运行环境(解释器);node依赖于Chrome V8引擎进行代码解释(高效)。异步I/0在学习node之前,我们的ajax,还有曾经使用多次的addeventlistener函数,定时器函数等等,都在使用所谓的异步。异步是相对于同步(按照顺序一件一件执行)来讲的概念...
2019-01-27 17:08:42
145
原创 JavaScript 数据类型
JavaScript中基本数据类型和引用数据类型的区别标签(空格分隔): 复习1、基本数据类型和引用数据类型ECMAScript包括两个不同类型的值:基本数据类型和引用数据类型。基本数据类型指的是简单的数据段,引用数据类型指的是有多个值构成的对象。当我们把变量赋值给一个变量时,解析器首先要确认的就是这个值是基本类型值还是引用类型值。2、常见的基本数据类型:Number、Strin...
2019-01-27 16:04:03
118
原创 正则表达式
正则表达式文章目录正则表达式*RgrExp(正则表达式)*--两种创建方式1. 直接量2. new RegExp();*RgrExp(正则表达式)*--语法1. 修饰符方括号2. 元字符3. 量词*练习1*4. RegExp 对象属性5. RegExp对象方法**reg.exec方法**6. 支持正则表达式的 String 对象的方法replace方法拓展1. 用正则表达式匹配特殊字符串*Rgr...
2019-01-27 16:02:32
446
原创 AJAX基础
AJAX基础Tags: ajax学习笔记ajax是一种在无需加载整个网页情况下还能更新部分网页的技术什么是ajax:AJAX = 异步 JavaScript 和 xmlajax 是一种应用于快速创建动态网页的技术,通过在后台与服务器少量的数据交换,Ajax可以使网页实现异步更新,(在无需刷新整个页面的情况下进行网页部分更新)XMLHttpRequest是 AJAX 的基础。 (简...
2018-09-28 10:30:40
152
原创 继承发展史,深度克隆
继承 1. 传统形式的继承 –>原型链缺点:过多的继承了没用的东西 2. 经典模式的继承 –>借用构造函数缺点:方法都在构造函数中定义,每次创建实例都会创建一遍方法。且不能继承构造函数的原型。 3. 共享原型 Son.prototype=Father.prototype缺点:子元素对原型属性的更改影响到父元素原型的属性 4.圣杯模式 function inherit...
2018-08-03 00:04:30
182
原创 call和apply
call 和 apply:call()和apply() 方法在使用一个指定的 this 值和若干个指定的参数值的前提下调用某个函数或方法。根本上是改变了this的指向。区别 :传参列表不同,call之后将实参依照形参顺序依次传入,apply之后将实参以数组的形式传入。这是Call的用法 var son = new Son(); function Person(name,ag...
2018-08-02 19:57:42
137
原创 原型,原型链
原型:原型是function对象的一个属性,定义了构造函数制造出的对象的公共祖先。通过该构造函数产生的对象,可以继承该原型的属性和方法。原型也是对象(父级和祖先级共有的属性值跟随父级)。 概念太枯燥,不如我们先看一个栗子 Person.prototype.lastName="Bao" function Person(name, age, sex){ ...
2018-08-02 18:46:38
198
原创 对象,包装类
对象(基础变量类型Object) var Object={ name : "baoxiaohai", level: 0, sex : "male", //属性 study: function(){ this.level++; //若要在方法内部指...
2018-08-01 11:42:27
228
原创 立即执行函数
立即执行函数:此类函数没有声明,在一次执行过后立即释放,适合做针对函数的初始化工作。可以有返回值,有预编译,有执行期上下文。立即执行函数有以下两种表达形式 (function (形参) {函数体} (实参) );w3c建议使用这种形式 (function (形参) {函数体} )(实参 ); 立即执行函数的组成方式为“函数名+();” “();”在类似的表达式中作为执行符号,用来执行表达式。...
2018-07-30 23:47:17
381
原创 闭包
按照C语言当中的语法习惯我们要输出1~10十个数字时通常会采用循环的方式 function test (){ var arr = []; for(var i = 0; i&lt;10; i++){ arr[i] = function(){ document....
2018-07-30 17:37:38
299
原创 解读预编译
解读预编译 预编译发生在函数执行的前一刻 JavaScript在执行的过程分为三个步骤 : 语法分析,找出低级错误 预编译(函数声明整体提升,变量声明提升) 解释执行 预编译的过程是在内存中开辟一些空间,存放一些变量与函数,系统自动将函数的声明提到最前,而对于变量只将声明提前,对赋值操作不做处理(如果变量声明赋值为一...
2018-07-30 15:50:40
181
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人