自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 vue 练习(prop、emit、watch)-数字输入框

“` 数字输入框 function isValueNumber(value){ return (/(^-?[0-9]+.{1}\d+)|(−?[1−9][0−9]∗)|(−?[1−9][0−9]∗)|(^-?[1-9][0-9]*)|(^-?0{1}$...

2018-06-08 12:05:06 839

原创 vue基础知识练习-购物车

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content=&a

2018-06-08 10:45:58 234

原创 vue-组件

vue组件全局注册:<body> <div id='app'> <my-component></my-component> </div> <script src="http://cdn.bootcss.com/vue/2.1.10/vue.js"></script&

2018-06-01 18:08:32 231

原创 vue - slot

slot:父组件中的内容代替了子组件中的 slot 标签,使得我们可以在 不同地方使用子组件的结构而且填充不同的父组件内容。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" con

2018-05-31 17:34:25 230

原创 es6-函数

箭头函数:var reflect = function(value){ return value;};var reflect = value=>value;var sum = (num1,num2)=>num1+num2;//如果函数没有任何参数,声明时必须使用一对空括号var getName=()=>"guanguan";//使用函数体或多个...

2018-05-16 18:15:47 269

原创 es6-模块

export 导出:export const name = 'guanguan';export function sum (num1,num2){ return num1+num2; }function multi(num1,num2){ return num1*num2; }export {multi};import 导入:...

2018-05-16 17:24:24 94

原创 es6—set map

set:没有重复值的有序列表let set = new Set();set.add(5);set.add('5');console.log(set); let key1={},key2={};set.add(key1);set.add(key2);console.log(set.size);let set = new Set([1,2,3,2,3,4,5]);cons...

2018-05-16 15:08:50 124

原创 es6—类

es5中的类:function PersonType(name){ this.name=name; }PersonType.prototype.say=function(){ console.log(this.name); } let person = new PersonType('guanguan'); person.say();//'guangu...

2018-05-16 13:37:12 135

原创 es6——解构赋值

1.对象解构赋值:let person={name:'guanguan',age:25};let {name,age}=guanguan;name;//"guanguan"age;//25//注:用let,var,const,声明解构赋值时,必须提供等号右侧的值(1)默认值let person={name:'guanguan',age:25};let {name,age,...

2018-05-15 20:12:09 139

原创 js设计模式之观察者模式

观察者模式又叫做发布-订阅模式,主要功能就是解耦。 有一个实际需求,在新闻评论模块, 当我们发布评论时,会在展示评论末尾处追加最新评论,同时消息模块的消息数量也会增加,删除评论留言区的评论时,消息模块数量相应的减少。 但是在项目开发中,往往不同模块由不同的人开发,消息模块,评论模块分别由不同的人开发。这个时候不想将几个独立的模块整合在一起,可以用观察者模式。 下面我...

2018-04-03 14:36:16 149

原创 js设计模式之命令模式

命令模式就是将创建模块的逻辑封装在一个对象里,这个对象提供一个参数化的请求接口,通过调用这个接口并传递一些参数实现调用命令对象内部中的方法。现在我们需要做一个活动页面,平铺结构,比如每个预览产品图片区域,有一行标题,标题下面是产品图片,只是图片数量和排列不同。//模块实现模块 var viewCommand=(function(){ var tpl={ //展示图片结...

2018-03-25 20:53:37 162

原创 js设计模式之模板方法模式

模板方法模式:父类定义一个基本的操作算法骨架,而将一些具体的实现步骤延迟在子类中,使得子类不要改变父类的算法结构可以实现一些拓展功能。创建基本提示框var Alert = function(data){ //如果没有数据则返回,防止后面程序执行 if(!data) return; this.content=data.content; //创建...

2018-03-25 13:43:39 148

原创 js设计模式之桥接模式

桥接模式主要是将实现层(元素绑定的事件)与抽象层(修饰页面的ui逻辑)解耦 例如: 管管赤脚不害怕 等级1 消息5 先在要实现鼠标移动上去有hover的效果,那么我们一步一步实现:function g(tag){ return document.getElementByTagName(tag);}var spans=g('span...

2018-03-23 12:34:12 233

原创 js设计模式之装饰者模式

装饰着模式:对原有对象进行包装,不改变原有对象的基础上,满足新的需求。 应用场景:比如现在有用户输入表单,电话输入框,地址输入框等等,新需求是默认输入框显示一行提示文案,用户点击输入框时文案消失。var input=docuemnt.getElementById('tel-input);//输入框元素var warnText=docuemnt.getElementById('tel-w...

2018-03-23 11:11:20 117

原创 js设计模式之适配器模式

适配器模式往往用于适配两个接口不兼容的问题,在js中应用更为广泛,比如适配两个代码库、适配前后端数据。 1.参数适配比如某个方法中需要传入多个参数function doSomething(name,title,age,type,color,size){}记住这些参数顺序很难,所以我们经常是以一个参数的形式传进去obj.name:nameobj.title:titleobj.ag...

2018-03-23 10:25:48 135

原创 js设计模式之外观模式

外观模式其实就是提供一个更高级的统一的接口,常用于处理兼容性统一或者封装,比如,处理绑定事件,下面以下两个例子为例: 1. 封装绑定事件:function addEvent(dom,type,fn){ if(dom.addEventListener){ dom.addEventListener(type,fn,false) } else if(dom.at...

2018-03-23 09:24:07 209 1

原创 js常见算法-----数组去重,查找字符串出现次数最多字符,

数组去重:思路:1.创建一个新的数组存放结果2.创建一个空对象3.for循环时,每次取出一个元素与对象进行对比,如果这个元素不重复,则把它存放到结果数组中,同时把这个元素的内容作为对象的一个属性,并赋值为1,存入到第2步建立的对象中。说明:至于如何对比,就是每次从原数组中取出一个元素,然后到对象中去访问这个属性,如果能访问到值,则说明重复。Array.p

2017-08-03 11:44:09 2181

原创 数据结构与算法-----排序算法

冒泡排序:function bubbleSort(arr) {var len =arr.length,termp;for (vari = len - 1; i > 0;i--) {for (varj = 0; j i; j++) {if (arr[j] >arr[j + 1]) {var temp =arr[j];arr[

2017-08-02 11:36:39 189

原创 深拷贝

function deepClone(initalObj, finalObj) { var obj = finalObj || {}; for (vari in initalObj) { if (typeofinitalObj[i] ==='object') {obj[i] = (initalObj[i].constructor ===Array)

2017-07-17 15:29:19 186

原创 js数据结构和算法----链表

var LinkdeList=function(){var Node=function(element){this.element=element;this.next=null;};var length=0;var head=null;// 向链表尾部追加元素this.append=function(element){var node=new Node(el

2017-07-04 14:34:23 186

原创 js数据结构预算法——队和栈

function Queue (){var items = [];this.enqueue=function (element){items.push(element);};this.dequeue=function (){return items.shift();};this.front=function(){return items[0];};thi

2017-07-04 14:32:10 210

原创 js语言精粹之值和引用

var a=2;var b=a;//b是a的一个副本b++;a;//2b;//3基本数据类型是值复制var c=[1,2,3,4];var d=c;//d是[1,2,3,4]的一个引用d.push(5);c;//[1,2,3,4,5]d;//[1,2,3,4,5]复合类型是引用复制c和d分别指向一个[1,2,3,4]的两个不同的引

2017-07-04 10:45:37 129

原创 js语言精粹之特殊数值

1不是数值的值:null:空值或者曾赋值过但目前没有值undefined:没有值 定义了但没有赋值;标识符,可以当做变量来 使用void:var a=42;console.log(void a ,a);//undefined,422特殊的数字:var a=2/'foo';//NaNtypeof a==="number"//trueNaN和任何值都不相等,包括自身

2017-07-04 09:45:07 170

原创 js数据结构与算法之——数组基本用法

数组创建方式: var arr=new Array();                             var arr=new Array(10);                             var  arr=new Array(1,2,3,4,7,9,);                             var  arr=[];数组的常用方法:队尾

2017-07-03 08:33:18 355

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除