- 博客(73)
- 资源 (4)
- 收藏
- 关注
原创 git放弃修改
#取消对文件的修改。还原到最近的版本,废弃本地做的修改。git checkout -- <file>#取消已经暂存的文件。即,撤销先前"git add"的操作git reset HEAD <file>...(比如:git reset HEAD readme.md)来放弃指定文件的缓存,放弃所以的缓存可以使用git reset HEAD .命令。此命...
2019-06-26 10:58:09 585
原创 vue-cli 3.x vue.config.js配置(包含webpack)
使用vue-cli3.x首先创建一个项目:https://cli.vuejs.org/zh/guide/creating-a-project.html#vue-create配置生成后的文件目录大概是一下样式:【想直接看配置的直接往下拉!!!】代码地址:https://download.csdn.net/download/weixin_37615202/11171479已经没有了we...
2019-05-10 17:14:13 10072 2
原创 vue引入iview 组件按需加载并修改组件原先样式方法
因为要做一个移动端需求,有一个页面是排行榜。点击下拉框是选择不同的组别渲染不同组别的排行榜那,因为项目紧张加上兼容性的要求所以打算找一个现在比较流行的框架来用。再三选择后选择了 iview组件!先看一下组件库本身的样式 还有 页面的效果吧 其实中间的过程无比艰辛。。。 开始吧第一步:引入iview组件 或者其中的部分组件,我只是用了一个Sel...
2019-05-07 15:29:43 2492
原创 http、ajax请求中如何携带cookie
前端进行数据请求有:普通的ajax(json)请求,jsop跨域请求,cors跨域请求,fetch请求...PC端这些请求方式中,普通的ajax(json)请求和jsop跨域请求是默认携带cookie的,而cors跨域请求和fetch请求默认是不携带cookie的。因此,当我们的请求需要携带cookie时,我们就要对cors跨域请求和fetch请求这两中请求方式进行特殊配置处理。对于做移动端的童鞋...
2019-03-29 14:53:31 6776
原创 浏览器的缓存机制
参考:https://www.cnblogs.com/slly/p/6732749.html有关请求头和响应头的字段说明,还有我的另一个文章:https://blog.csdn.net/weixin_37615202/article/details/72628693什么是浏览器缓存? 简单来说,浏览器缓存就是把一个已经请求过的Web资源(如html页面,图片,js,数据等)...
2019-03-29 13:57:14 209
原创 webpack 4.x基本使用
const webpack = require("webpack");const os = require("os");const path = require('path');const CopyWebpackPlugin = require('copy-webpack-plugin');const CleanWebpackPlugin = require('clean-webpack...
2019-03-18 16:30:57 506
原创 常见的状态码1xx、2xx、3xx、4xx、5xx、
今天被问到这些的时候完全就是懵逼的,常用的还是知道,但是那些201.。。401.。。。心态已经炸裂1xx:接受,继续处理 200:成功,并且返回数据 201:接受请求,并且已经创建资源 202:接受请求 203:请求成功,但是未授权 204:成功,但是没有内容 205:成功,重置内容 206:成功,部分内容 301:永久移动,重定向 302:临时重定向,原先url可用 30...
2019-03-12 21:55:27 3005
原创 ES5数组方法的简单实现、及ES6数组的方法简单介绍
先插一个题外话,判断一个数组是不是空数组或者一个对象是不是空对象var a = []if (Object.prototype.toString.call(a) === '[object Array]' && a.length === 0) { console.log('this is empty array')}var obj1 = {};if (JSO...
2019-03-12 21:28:30 294
转载 vue-router的使用及实现原理
转载:https://segmentfault.com/a/1190000014822765前端路由是直接找到与地址匹配的一个组件或对象并将其渲染出来。改变浏览器地址而不向服务器发出请求有两种方式: 1. 在地址中加入#以欺骗浏览器,地址的改变是由于正在进行页内导航 2. 使用H5的window.history功能,使用URL的Hash来模拟一个完整的URL。两种模...
2019-03-11 16:21:38 610
转载 SCSS 教程
本文完全转自https://www.jianshu.com/p/a99764ff3c41 作者:白雪公主960没办法。和上文一样,做的项目代码已经没了。。。。找不到只能直接从网上找备份学习记录Sass是成熟、稳定、强大的CSS预处理器,而SCSS是Sass3版本当中引入的新语法特性,完全兼容CSS3的同时继承了Sass强大的动态功能。特性概览CSS书写代码规模较大的Web...
2019-03-11 15:48:38 183
原创 gulp 将 scss(sass) 打包成 css
本来想找一下我自己做的一个项目的。但是好像找不到了。。。线上代码因为改版后删了。。伤心ing。所以只能在网上找一个文章弄一下、、参考链接:https://www.jianshu.com/p/fff7d8ba348b 增加部分注释及代码优化//Gulp pluginvar gulp = require("gulp"), util = require("gulp-util"), ...
2019-03-11 11:27:51 2286 1
原创 ES5、ES6深拷贝、浅拷贝
看这个文章之前,看一下这个作者的文档,讲了一下堆和栈、基本数据和引用数据,比较基础的一些东西:https://www.cnblogs.com/echolun/p/7889848.html如何区分深拷贝与浅拷贝,简单点来说,就是假设B复制了A,当修改A时,看B是否会发生变化,如果B也跟着变了,说明这是浅拷贝,拿人手短,如果B没变,那就是深拷贝,自食其力。浅拷贝:复制对象的时候,只对第一层键值...
2019-03-10 18:10:34 2050
转载 前端XSS攻击和防御
转载:https://www.cnblogs.com/wqhwe/p/5416976.html xss跨站脚本攻击(Cross Site Scripting),是一种经常出现在web应用中的计算机安全漏洞,指攻击者在网页中嵌入客户端脚本(例如JavaScript), 当用户浏览此网页时,脚本就会在用户的浏览器上执行,从而达到攻击者的目的。比如获取用户的Cookie,导航到恶意网站,携带木马等...
2019-03-10 11:23:00 483
原创 service worker SW.js 和 文件更新方法
用户端SW的更新的话:1.用户在无操作24小时候可以自动更新2.手动关闭当前浏览器所有版面后3.浏览器也会自动的对比两次的SW.js,稍微一点差异也会重新install4.注册了一个新的 URL 不同的 Service Worker(网上都不赞成这种做法用户端文件的更新,我看了大致四种方法1.每次更新内容重新生成cacheStorageKey,将当前的cacheStorag...
2019-03-08 17:28:57 4543
原创 JS 冒泡排序、快速排序、归并排序
JS面试题必考题冒泡排序: 随便从数组中拿一位数和后一位数比较,如果是想从小排到大排序,那么就把小的那一位放到前面,大的放到后面,简单来说就是交换他们的位置,如此反复的交换位置就可以得到排序的效果。var arr = [3,1,4,2,5,21,6,15,63];function sortA(arr){ for(var i=0;i<arr.length-1;i++){...
2019-03-08 14:54:01 227
原创 ES6 promise简单应用
function runAsync() { var p = new Promise(function (resolve, reject) { //做一些异步操作 setTimeout(function () { console.log('函数里面的执行完成1'); resolve('随便什么数据1.....'); ...
2019-03-07 14:17:45 245
原创 node-xlsx读取Excle表格重新写入新的Excle表格
前段时间遇到项目上的一个小工作,就是将旧的所有需要的模板导出来。然后改为新的格式并导出到新的表格中。刚开始遇到的时候心想直接挨个改吧,后来打开一看几百个模板。瞬间死心,所以灵机一动,不如写个脚本自动转一下。。。然后Google了一下 发现了node-xlsx这个插件,完美。。。相关的链接:https://www.npmjs.com/package/node-xlsx;废话不说,上代...
2019-03-07 09:55:36 1775
原创 vue-router 2.0 跳转之router.push()
<router-link tag="a" :to="{path:'/articleTask',query{id:article_task.id}}">上面的写法是声明式的写法,直接写在组件里面template里面表示目标路由的链接。当被点击后,内部会立刻把 to 的值传到 router.push(),所以这个值可以是一个字符串或者是描述目标位置的对象。router.pus...
2018-10-11 11:13:16 1182
原创 vue-router 2.0 跳转之传参、传递多个参数
在vue项目中,往往会遇到这样的情况,就是要实现在一文章列表中,点击其中一条跳转到下个页面,然后将这一条的相关数据带到下个页面中显示,无论点哪一条都是跳到相同的页面结构(下一个页面的页面使用的组件是一样的),只是填的数据不一样,这个时候就需要实现跳转的时候一起把参数携带过去。<template> <div class="template"> <!--...
2018-10-11 11:01:12 9488 1
原创 JavaScript高级程序设计总结五
第十六章 HTML5编程第20章,JSONJSON(JavaScript Object Notation,JavaScript对象表示法),是JavaScript的一个严格的子集。JSON可表示一下三种类型值:简单值:字符串,数值,布尔值,null,不支持js特殊值:undefined对象:一组无序的键值对数组:一组有序的值的列表不支持变量,函数或对象实例注:J...
2018-08-08 07:30:56 359
原创 JavaScript高级程序设计总结四
第14章 表单脚本表单的基础知识:在HTML中,表单是由<form>元素来表示的,而在JavaScript中,表单对应的则是HTMLFormElement类型。通过document.forms可以取得页面中的所有表单。(1)提交表单用户可以单击提交按钮或图像按钮来提交表单,浏览器会在将请求发送给服务器之前触发submit事件。(2)重置表单与提交表单一样,既...
2018-08-08 07:26:26 218
原创 JavaScript高级程序设计总结三
第十二章 DOM2和DOM31、DOM2和DOM3模块DOM2级核心:在1级核心的基础上构建,为节点添加了更多的方法和属性 DOM2级视图:为文档定义了基于样式信息的不同视图 DOM2级事件:说明了如何使用事件和DOM文档交互 DOM2级样式:定义了如何以编程方式来访问和改变CSS样式信息 DOM2级遍历和范围:引入了遍历DOM文档和选择其特定部分的新接口 DOM2级HTML:在...
2018-08-08 07:21:18 175
原创 JavaScript高级程序设计总结二
第六章 面向程序设计 1.JavaScript支持OO 面向对象编程、 所有引用类型(函数,数组,对象)都拥有__proto__属性(隐式原型) 所有函数拥有prototype属性(显式原型)(仅限函数) 原型对象:拥有prototype属性的对象,在定义函数时就被创建 2.创建对象工厂模式 构造函数模式 ...
2018-07-24 23:51:50 132
原创 JavaScript高级程序设计总结一
第一章:JavaScript实现核心ECMAscript 文档对象模型 DOM [body head p h2 div]提供访问和操作网页内容的方法和接口 浏览器对象模型 BOM [navigator location screen cookie] 提供与浏览器交互的方法和接口第二章:在HTML中使用JavaScript<script> async charset d...
2018-07-24 23:36:26 271
转载 各大前端巨头反爬虫策略
转载:http://litten.me/2017/07/09/prevent-spiders/1. 前言对于一张网页,我们往往希望它是结构良好,内容清晰的,这样搜索引擎才能准确地认知它。而反过来,又有一些情景,我们不希望内容能被轻易获取,比方说电商网站的交易额,教育网站的题目等。因为这些内容,往往是一个产品的生命线,必须做到有效地保护。这就是爬虫与反爬虫这一话题的由来。2. 常见反爬虫策略但是世界...
2018-07-06 09:11:40 1447
转载 Javascript获取数组中的最大值和最小值的方法汇总
转载地址:http://www.jb51.net/article/77331.htm比较数组中数值的大小是比较常见的操作,比较大小的方法有多种,比如可以使用自带的sort()函数,下面来介绍如下几种方法,代码如下:方法一:最大值:if (typeof Array.prototype['max'] == 'undefined') { Array.prototype.max = function(...
2018-05-29 09:55:52 1667
原创 阻止事件冒泡和事件默认
<!DOCTYPE html><html> <head><meta content="text/html; charset=utf-8" http-equiv="Content-Type" /><title>效果测试</title><script language="
2018-03-01 10:53:33 211
原创 JS获取页面所有元素并统计每个标签的个数
var map = {};//采用递归调用的方法,比较方便和简单。function fds(node){ if(node.nodeType === 1){ var tagName = node.nodeName; map[tagName] = map[tagName]? map[tagName] + 1: 1; } var children = node.child...
2018-03-01 10:37:57 2670 1
原创 JS基础学习第十三天:Math对象方法和Date日期方法
Math对象==========Math是一个内置对象,它具有数学场数和函数的属性和方法。不是一个函数对象属性: Math.E 欧拉常数,也是自然对数的底数, 约等于 2.718. Math.LN2 2的自然对数, 约等于0.693. Math.LN10 10的自然对数, 约等于 2.303. Math.LOG2E 以2为底E的
2017-12-21 17:40:57 249
原创 JS基础学习第十二天:String字符串方法
String字符串============string全局对象是一个用于字符串或者一个字符串序列的构造函数。************************************************************有关string的基本介绍和创建方法前面文章已经介绍,这儿就不再说了,有兴趣的可以翻着看看或者上MDN上查阅相关资料相关链接:https://devel
2017-12-21 10:03:16 220
原创 JS基础学习第十一天:Array数组方法
Array数组===========数组的创建:a:使用Array构造函数var arr1 = new Array(); //创建一个空数组var arr2 = new Array(20); // 创建一个包含20项的数组var arr3 = new Array("lily","lucy","Tom"); // 创建一个包含3个字符串的数组b:使用数组字面量表示法va
2017-12-20 17:30:42 347
原创 JS基础学习第十天:BOM对象及BOM操作
BOM部分基础知识总结==================什么是BOM?ECMAScript 是 JavaScript 的核心,但是在web中使用JavaScript,那么BOM(浏览器对象模型)无疑才是真正的核心;BOM(Browser Object Document)即浏览器对象模型。BOM提供了独立于内容 而与浏览器窗口进行交互的对象;由于BOM主要用于管理窗口与窗口
2017-12-12 16:19:03 285
原创 JS基础学习第九天:RegExp正则表达式
RegExp======RegExp 构造函数创建了一个正则表达式对象,用于将文本与一个模式匹配。 正则表达式是用于匹配字符串中字符组合的模式。在 JavaScript中,正则表达式也是对象。这些模式被用于RegExp 的 exec 和 test 方法, 以及 String 的 match、replace、search 和 split 方法创建一个正则表达式
2017-12-07 18:10:09 487
原创 JS基础学习第八天:JSON是什么?怎么使用?
什么是json?=========== JSON是一种按照JavaScript对象语法的数据格式,虽然它是基于 JavaScript 语法,但它独立于JavaScript,这也是为什么许多程序环境能够读取(解读)和生成 JSON。 JSON可以作为一个对象或者字符串存在,前者用于解读 JSON 中的数据,后者用于通过网络传输 JSON 数据。 这不是一个大事件——JavaSc
2017-12-06 14:23:57 270
原创 JS基础学习第七天:对象原型及原型式的继承
通过原型这种机制,JavaScript中的对象从其他对象继承功能特性,这种继承机制与经典的面向对象变成语言的继承机制不同,本文将探讨这些差别,解释原型链如何工作,并了解如何通过prototype属相向已有的构造器添加方法基于原型的语言?=============== JavaScript 常被描述为一种基于原型的语言 (prototype-based language)——每个对象
2017-12-05 17:12:36 286
原创 JS基础学习第六天:JavaScript对象入门(构造函数和实例对象)
在 JavaScript 中,大多数事物都是对象, 从作为核心功能的字符串和数组,到建立在 JavaScript 之上的浏览器 API。你甚至可以自己创建对象,将相关的函数和变量封装打包成便捷的数据容器。理解这种面向对象 (object-oriented, OO) 的特性对于进一步学习 JavaScript 语言知识是必不可少的。对象原型: 通过原型 (prototype) 这种机制
2017-12-04 16:45:05 249
原创 JS基础学习第五天:函数--可复用的代码块
浏览器内置函数============ JavaScript有许多内置的函数,可以让您做很多有用的事情,而无需自己编写所有的代码。事实上, 许多你调用(运行或者执行的专业词汇)浏览器内置函数时调用的代码并不能使用JavaScript来编写——大多数调用浏览器后台的函数的代码,是使用像C++这样更低级的系统语言编写的,而不是像JavaScript这样的web编程语言。 请
2017-12-01 20:01:09 384
原创 JS基础学习第四天:条件控制语句、循环语句、函数模块、事件等通用代码块2
循环语句========循环的必要三要素:开始条件, 结束条件, 迭代器循环的标准 1.关键字for,后跟一些括号。 2.在括号内,我们有三个项目,以分号分隔: 1.一个初始化器 - 这通常是一个设置为一个数字的变量,它被递增来计算循环运行的次数。它也有时被称为计数变量。 2.一个退出条件 -如前面提到的,这个定义循环何时停止循环。这通常是一个表现为
2017-11-30 18:29:08 673
原创 JS基础学习第四天:条件控制语句、循环语句、函数模块、事件等通用代码块
条件语句========if..else 语句基本的if..else语句 1.关键字 if,并且后面跟随括号。 2.要测试的条件,放到括号里(通常是“这个值大于另一个值吗”或者“这个值存在吗”)。这个条件会利 用比较运算符(我们会在最后的模块中讨论)进行比较,并且返回true或者false。 3.一组花括号,在里面我们有一些代码——可以是任何我们喜欢的代码,并且
2017-11-30 15:20:11 240
原创 Chrome调试js经常出现的问题集合
1.Chrome调试js出现Uncaught SyntaxError: Unexpected identifier类似于这种情况出现的问题可能有: 1.引用的字符串没有加引号; 2.前面或者后面的引号没有补全; 3.单双引号嵌入错误; 4.语法的末尾分号用了中文标点.' " ; > 用了中文;; 5.js文的上一句末尾没有加标点或者标点错误或
2017-11-29 16:58:32 638
流畅的Python
2017-07-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人