自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (1)
  • 收藏
  • 关注

原创 git如何保留做出的修改,但是删除多余的提交历史

在test分支写了一些东西,提交了很多次,像这样: $ git log --oneline c7c3a2a (HEAD -> test, origin/test) remove comment 873555f test8 dc0de8a test7 27339a3 test6 a8e94e6 test5 cc4b799 test4 6ff8c72 test3 ab68e0f test2 e8...

2019-03-06 09:09:17 1516

原创 关于es6变量解构赋值的一个问题

function exchange1 (arr, i, j) { [arr[i], arr[j]] = [arr[j], arr[i]] return arr } function exchange2 (arr) { const i = 1 const j = 3 [arr[i], arr[j]] = [arr[j], arr[i]] ret...

2018-11-26 17:11:07 182

原创 如何实现链式调用

如何实现链式调用 今天看了月影老师的PPT,感觉写的太好了,真的是循序渐进,循循善诱,醍醐灌顶,如沐春风… 特此总结一下 原PPT地址:https://ppt.baomitu.com/d/93fec210#/2 题目 html如下: <ul> <li>1</li> <li>2</li> <li>3</li&g

2018-11-22 15:53:33 1224

原创 Vue响应式原理浅析

Vue响应式原理浅析 考虑下面的情形: const state = { a: 1 b: 10 } 如何让a变化的时候,b始终是a的10倍?也就是说像下面这样: state.a = 2 // 打印"state.b is 20" state.a = 3 // 打印"state.b is 30" 这其实就是vue的响应式原理,vue依赖Object.defineProperty的ge...

2018-11-09 16:19:40 296

原创 使用$emit传参:如何同时接收父组件和子组件的参数?

需求描述:组件内部发射事件并且有参数传递出来,然后监听该事件时,事件处理程序又同时需要获取组件外面传进来的参数 举个例子: tag-input组件监听change事件 <template> <div class="tag-input-wrapper"> <input v-model="tag" @change="emitCha...

2018-10-06 21:37:05 3640 2

原创 如何用vscode调试express

{ "version": "0.2.0", "configurations": [ { "type": "node", "request": "launch", "name": "启动程序", &quo

2018-09-27 10:21:57 3126

原创 数组扁平化的3种通用方法

const arr = [[1, [2,3,[4,5]],[[6],[7,8]]], 9] // // 输出[1,2,3,4,5,6,7,8,9] // 直接递归 function flat1 (arr) { let ans = [] arr.forEach(e => { Array.isArray(e) ? ans = ans.concat(flat1(e)) : an...

2018-09-19 11:36:27 487

原创 margin-top:3%,这个百分数是相对于谁的?

相对于父元素的width 是的你没有看错,是width,不是height padding和margin无论left还是right还是top还是bottom都是相对于父元素的width的  

2018-09-08 16:23:43 1546

原创 彻底分清clientHeight,scrollHeight,offsetHeight,clientTop,scrollTop,offsetTop的区别

clientHeight,scrollHeight,offsetHeight clientHeight: 可理解为内部可视区高度,样式的height+上下padding scrollHeight: 内容的实际高度+上下padding(如果没有限制div的height,即height是自适应的,一般是scrollHeight==clientHeight) offsetHei...

2018-09-06 11:23:54 18823 1

原创 node里的this和浏览器指向的this不一定一样

s2 = 1111; function Timer(){ this.s1 = 0 this.s2 = 0 timer1 = setInterval(() => this.s1++, 1000) timer2 = setInterval(function(){console.log(this); this.s2=2000;this.s2++}, 1000) }...

2018-07-31 20:37:19 485

原创 git线上线下合并

一开始我在github上新建了一个仓库,加入了readme和gitignore然后我在本地新建了一个项目,然后git init, git add . git commit -m "xxxxxx", 现在线上和线下的两个分支没有关联,使用git pull,这时会提示fatal: refusing to merge unrelated histories解决方法:使用git pull origin m...

2018-06-26 10:30:11 1195

原创 __name,__main

每个python模块(即一个py文件)都有一个默认的参数__name__,如果是直接作为脚本执行的,那么__name__='__main__',如果是import到别的模块中执行的,那么__name__等于模块名假如现在有两个python模块a.py和b.py,//a.py print "I'm in the a.py" print "__name__ = " + str(__name__) if...

2018-06-07 09:29:48 220

原创 作用域插槽

作用域插槽增加了组件的抽象能力比如我定义了一个my-list组件,在没有使用作用域插槽的时候,我可能会这么写my-list的模板: <div class="my-list"> <h3 class="title">{{ title }}</h3> <div class="list"&g

2018-06-06 21:01:59 2575

原创 在自定义组件上监听原生的focus事件

var demo23 = new Vue({ el: "#demo23", data: { labels: [ { id: 1, name: '姓名:', inputvalue: '' }, { id: 2, name: '年龄:', inputvalue: '' }, { id: 3, nam...

2018-06-05 16:58:22 968 1

原创 splice

a.splice(index,n,content):新元素的位置将出现在拼接后数组的第index个位置上,然后删除新数组的n个元素splice的返回值是被删去的元素组成的数组,并且splice属于变异方法(就是会改变原数组的值的方法,非变异方法比如slice,对一个数组运用slice方法不会改变这个数组)...

2018-05-31 19:19:11 732

原创 可以使用e.target.dataset.xxx获取data-xxx的值

使用 <td class="col-sm-2"> <a href="#" class="check" data-awardid="${award.id}">查看</a> <a href="#" class="edit" data-awardid=&quot

2018-05-07 19:15:02 7738

原创 JS对象

对象对象 什么是对象 如何创建对象上 第一种使用new构造函数 第二种对象字面量表示法 如何访问对象的属性 第一种点表示法 第二种方括号表示法 理解对象的属性 属性类型 数据属性 1 数据属性的4个特性 2 如何删除属性 3 如何修改特性 4 使用ObjectdefineProperty需要注意的2点 访问器属性 1 访问器属性的4个特性 2 如何添加访问器属性2种方法 3 什么时候希望使用访问器

2018-03-15 22:08:56 110

原创 工厂模式和稳妥构造模式的区别

先上代码,来自《JS高程》function createPerson(name, age, job) { var o = new Object(); o.name = name; o.age = age; o.job = job; o.sayName = function() { alert(this.name); } ret...

2018-03-04 22:00:26 474

原创 对象

(一、)JS中的对象是什么?ECMA262把对象定义为:    无序属性的集合,其属性可以是基本值、对象或函数对象相当于是一组无序的键值对,值可以是数据或者函数(二、)JS中的对象和其他面向对象的语言有什么区别?    (Object-Oriented, 面向对象)OO语言的一个重要标志是有类的概念,通过类我们可以创建任意多个具有相同属性和方法的对象,然而JS中是没有类的概念的。每个对象都是基于引...

2018-03-04 08:20:01 169

原创 JS基础之caller

函数对象.caller,返回当前函数的函数引用。因为outer()调用了inner(),所以inner.caller指向outer()function outer() { inner(); //这会显示吗}function inner() { alert(inner.caller); //不能写成alert(this.caller); //否则会显示undefined...

2018-03-02 10:32:44 229

原创 JS基础之splice()

splice(起始插入点,起始插入点之后删除几个,要插入的元素1,要插入的元素2...)(method) Array<string>.splice(start: number, deleteCount: number, ...items: string[]): string[] (+1 overload)Removes elements from an array and, if ne...

2018-03-01 15:50:28 213

原创 JavaScript基础之sort()方法

一、sort()方法:调用每个数组项的toString()方法比较字符串,按升序排列数组var items = ["d", "a", "b", "e", "c"];items.sort();alert(items);alert()会先调用数组的toString方法然后显示二、数组的值是number的情况下调用sort()方法sort()不会按照数值大小升序排列而是按字符串大小排列var items...

2018-03-01 14:48:43 142

原创 块级元素、行内元素,display和无名框

诸如div,p,h1这些元素被称为块级元素,这些元素的内容会被显示成为一个四四方方的block而span,strong这些元素被称为行内元素,那么这些元素的内容是in-line的,内容显示在行中可以使用 display 属性改变生成的框的类型。把 display 设置为 block,可以让行内元素(比如 <a> 元素)表现得像块级元素一样。把 display 设置为 none,让生成的...

2018-02-20 15:18:47 268

原创 浮动

2018-02-20 12:18:19 311

原创 HTML知识补充

以下程序在Chrome浏览器中运行, 一、accesskey和tabindex<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-wid

2018-02-19 15:59:50 135

原创 HTML表单

一、form标签两个最重要的属性:action 和 methodinput的type类型有很多,这里有text和password两种button的type类型默认为submit,另外还有button, reset类型=================================================================二、GET 和 POST的区别:1.GET就是从服务器...

2018-02-19 11:31:57 6828

空空如也

空空如也

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

TA关注的人

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