- 博客(26)
- 资源 (1)
- 收藏
- 关注
原创 git如何保留做出的修改,但是删除多余的提交历史
在test分支写了一些东西,提交了很多次,像这样:$ git log --onelinec7c3a2a (HEAD -> test, origin/test) remove comment873555f test8dc0de8a test727339a3 test6a8e94e6 test5cc4b799 test46ff8c72 test3ab68e0f test2e8...
2019-03-06 09:09:17
1606
原创 关于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
218
原创 如何实现链式调用
如何实现链式调用今天看了月影老师的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
1264
原创 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
343
原创 使用$emit传参:如何同时接收父组件和子组件的参数?
需求描述:组件内部发射事件并且有参数传递出来,然后监听该事件时,事件处理程序又同时需要获取组件外面传进来的参数举个例子:tag-input组件监听change事件<template> <div class="tag-input-wrapper"> <input v-model="tag" @change="emitCha...
2018-10-06 21:37:05
3731
1
原创 如何用vscode调试express
{ "version": "0.2.0", "configurations": [ { "type": "node", "request": "launch", "name": "启动程序", &quo
2018-09-27 10:21:57
3221
原创 数组扁平化的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
523
原创 margin-top:3%,这个百分数是相对于谁的?
相对于父元素的width是的你没有看错,是width,不是heightpadding和margin无论left还是right还是top还是bottom都是相对于父元素的width的
2018-09-08 16:23:43
1601
原创 彻底分清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
18983
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
513
原创 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
1247
原创 __name,__main
每个python模块(即一个py文件)都有一个默认的参数__name__,如果是直接作为脚本执行的,那么__name__='__main__',如果是import到别的模块中执行的,那么__name__等于模块名假如现在有两个python模块a.py和b.py,//a.pyprint "I'm in the a.py"print "__name__ = " + str(__name__)if...
2018-06-07 09:29:48
250
原创 作用域插槽
作用域插槽增加了组件的抽象能力比如我定义了一个my-list组件,在没有使用作用域插槽的时候,我可能会这么写my-list的模板: <div class="my-list"> <h3 class="title">{{ title }}</h3> <div class="list"&g
2018-06-06 21:01:59
2633
原创 在自定义组件上监听原生的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
1042
1
原创 splice
a.splice(index,n,content):新元素的位置将出现在拼接后数组的第index个位置上,然后删除新数组的n个元素splice的返回值是被删去的元素组成的数组,并且splice属于变异方法(就是会改变原数组的值的方法,非变异方法比如slice,对一个数组运用slice方法不会改变这个数组)...
2018-05-31 19:19:11
767
原创 可以使用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="
2018-05-07 19:15:02
7835
原创 JS对象
对象对象什么是对象如何创建对象上第一种使用new构造函数第二种对象字面量表示法如何访问对象的属性第一种点表示法第二种方括号表示法理解对象的属性属性类型数据属性1 数据属性的4个特性2 如何删除属性3 如何修改特性4 使用ObjectdefineProperty需要注意的2点访问器属性1 访问器属性的4个特性2 如何添加访问器属性2种方法3 什么时候希望使用访问器
2018-03-15 22:08:56
156
原创 工厂模式和稳妥构造模式的区别
先上代码,来自《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
509
原创 对象
(一、)JS中的对象是什么?ECMA262把对象定义为: 无序属性的集合,其属性可以是基本值、对象或函数对象相当于是一组无序的键值对,值可以是数据或者函数(二、)JS中的对象和其他面向对象的语言有什么区别? (Object-Oriented, 面向对象)OO语言的一个重要标志是有类的概念,通过类我们可以创建任意多个具有相同属性和方法的对象,然而JS中是没有类的概念的。每个对象都是基于引...
2018-03-04 08:20:01
192
原创 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
269
原创 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
249
原创 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
181
原创 块级元素、行内元素,display和无名框
诸如div,p,h1这些元素被称为块级元素,这些元素的内容会被显示成为一个四四方方的block而span,strong这些元素被称为行内元素,那么这些元素的内容是in-line的,内容显示在行中可以使用 display 属性改变生成的框的类型。把 display 设置为 block,可以让行内元素(比如 <a> 元素)表现得像块级元素一样。把 display 设置为 none,让生成的...
2018-02-20 15:18:47
319
原创 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
158
原创 HTML表单
一、form标签两个最重要的属性:action 和 methodinput的type类型有很多,这里有text和password两种button的type类型默认为submit,另外还有button, reset类型=================================================================二、GET 和 POST的区别:1.GET就是从服务器...
2018-02-19 11:31:57
6914
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人