自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue-cli创建一个vue完整项目以及简单的菜单路由跳转

1、给段落的首字母加样式.contain p:first-child:first-letter {color: red;}.contain p:first-child:first-line {color: inherit;}2、实现一个不停旋转的地球.rotate{ animation-name: rotateme; animation-duration: 24s; animation-iteration-count: infinite; anima

2021-01-03 18:00:56 645

原创 项目实际开发中知识点整理

一、css篇1. 对于text-overflow:ellpisis;在flex布局下不生效;2. @import '../out.less' 这样引入的样式会作用于全局,尽管是写在当前文件的scoped下的解决办法:在less文件中的最外面套一层自己自定义的唯一的样式,这样里面重名的样式就不会应用到其他页面组件了二、js篇1. for in循环用来遍历对象,可以遍历数组,但最好不要,因为遍历数组时会遍历数组原型链的属性;2....

2020-11-22 16:12:13 290

原创 d3简单学习

1、d3读取。csv文件,提示访问方式必须以http,https开头的请求方式。安装http-server安装后启动项目2、点击按钮切换数据源(.csv)需要先清除数据 d3.select("#bar-1").selectAll("rect").data([]).exit().transition().delay(100).remove(); 渲染的时候给柱状图添加动画 bara.selectAll("rect").data(data).enter() .

2020-10-06 17:15:45 443

原创 vue购物车项目遇到的知识点

1、vue图片静态路径可以加载成功,但是List里面的src属性动态赋值,图片无法显示解决:require("@/img/xxx.png")2、路由跳转传递的参数可以是对象吗可以;使用params传递参数3、购物车中,点击增加数量,只对当前物品进行小结计算,vue的v-for循环中item中的对象数据的处理怎么挪入computed中来计算。因为computed不能携带参数,但是需要把当前Index传递进去,去计算金额,使用methods来代替 getTotalPrice()

2020-09-13 20:59:57 715

原创 canvas实现图片压缩

1、 Canvas 的绘图能力,通过调整图片的分辨率或者绘图质量来达到图片压缩的效果,实现思路如下:获取上传 Input 中的图片对象 File 将图片转换成 base64 格式 base64 编码的图片通过 Canvas 转换压缩,这里会用到的 Canvas 的 drawImage 以及 toDataURL 这两个 Api,一个调节图片的分辨率的,一个是调节图片压缩质量并且输出的,后续会...

2020-04-28 19:31:30 2854

原创 异步编程&promise(一)

一、异步编程首先函数是一等公民,可以作为函数参数或者函数返回值1、首先举个函数工厂的例子,顾名思义,用来生产函数,这个例子是判断一个变量的类型function isType(type){ return function(param){ return Object.prototype.toString().call(param)==`[object ${type}]`;...

2020-04-26 13:47:37 177

原创 JavaScript经典案例

一、跨浏览器添加事件\移除function addEvent(eventObj,tyoe,fn){ if(eventObj.addEventListener){ eventObj.addEventListener(type,fn,false) }else if(eventObj.attachEvent){ eventObj.attachEvent('o...

2020-04-17 15:51:56 3422 1

原创 CSS知识课堂

1、实现背景图片透明,图片之上的文字正常显示技术点有二:1、背景图片透明,其上的文字正常显示2、文字垂直居中显示分析:文字显示在背景之上,那么给文字的z-index:99; 文字是不定宽高的,用absolute+transform来实现难点:发现将中间内容的元素透明度设为0.5,文字也会继承此特性,变为0.5因此采用:::before伪类来实现...

2020-04-16 14:09:54 175

原创 .txt文件转为json文件,本地json文件读取

最近遇到一个问题,客户给了一个.txt文件,里面有上万条数据,需要从文件中查询数据并进行计算。1、首先的思路是.txt文件转为.json文件用fileReader 来对数据进行处理2、处理后得到一个json数组对象,但是不能每次用到的时候都去读取.txt文件,毕竟里面的数据可不少,还是本地生成一个json文件function trans(){ var _FileData...

2020-04-03 12:01:45 7639

原创 图书销售系统项目知识点总结

1、实现购物车问题1:点击物品的加减,需要给当前物品的数目变化;因为物品列表是动态增加的,每次点击增加,数目会增加,但是点击下一物品,还是这个物品的数目增加,最后用了一个本办法给当前元素span一个唯一的ID,通过i来获取 div1.innerHTML = '<input type="button" value="-" onClick="less('+i+')">&lt...

2020-03-22 17:18:51 843

原创 Node.js基础实践问题汇总

引言:最近做了一个非常非常非常小的项目实例,奈何在家太菜,吭哧吭哧写了一天半,把这个实现guo过程中遇到的一些边边角角的小问题都记录一下。1、写NodeJS服务器端的POST/GET请求(1)通过reques.method判断客户端的请求方式(2)通过request.url判断客户端的具体请求接口,返回对应字段 //post方式=》 var enddate = {};...

2020-03-01 09:35:36 178

原创 学习笔记(06):Node.js进阶教程第一步(基础篇)-node.js教程16_事件机制

本课程从Node.js的安装配置开始,包括函数调用,模块调用,路由,文件操作,异常处理,参数接收,正则表达式,连接数据库,事件等内容,使学员通过十六课时,学习Node.js的基础知识,掌握JS开发服务端的编写方法,了解Node.js的运行机制,为深入学习后期各类框架打好基础。...

2020-02-22 14:09:07 258

原创 学习笔记(05):Node.js进阶教程第一步(基础篇)-node.js教程4_路由初步

本课程从Node.js的安装配置开始,包括函数调用,模块调用,路由,文件操作,异常处理,参数接收,正则表达式,连接数据库,事件等内容,使学员通过十六课时,学习Node.js的基础知识,掌握JS开发服务端的编写方法,了解Node.js的运行机制,为深入学习后期各类框架打好基础。...

2020-02-20 13:12:15 271

原创 学习笔记(03):如何学好webpack4.0?-配置文件-入口出口

webpack是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个bundle。...

2020-02-14 17:13:09 118

原创 迭代器模式

1、概念:迭代器模式是指提供提供一种方法顺序访问一个聚合对象中的各个元素。比如,JQuery中的$.each()函数,这属于内部迭代器,由于迭代规则已经被提前规定。外部迭代器必须显式地请求迭代下一个元素。2、迭代器的应用举例 //需要上传一个文件,先得看浏览器是否有对应的上传控件,没有则看是否支持flash插件,不支持则使用最原始的浏览器表单上传 var getU...

2020-01-29 12:47:18 147

原创 模板方法模式和职责链模式

一、模板方法模式1、模板方法模式,基于继承的设计模式,由两部分组成,抽象父类和具体实现子类。2、例子Coffe 和 Tea//创建抽象类 -- 饮料 function Beverage(){} Beverage.prototype.boilWater = function(){ console.log("把水煮沸") } //...

2020-01-23 13:34:10 595

原创 适配器模式和组合模式

一、适配器模式1、作用:主要解决两个软件实体间接口不兼容的问题2、实例(1)地图渲染的适配//谷歌和百度地图的渲染地图调用的方式不一样 var googleMap = { show: function () { console.log('开始渲染谷歌地图') } } ...

2020-01-15 15:21:43 607

原创 发布-订阅模式

一、核心概述发布订阅模式主要包含三大块:缓存数组、订阅、发布缓存数组 一个数组[] 订阅 往数组里面压入函数fn 发布 里面循环遍历数组,然后执行数组中的函数。 二、简单代码实现及改进(1)实现 var subpub = {}; subpub.cache = []; subpub.subscribe = function(fn){ ...

2020-01-14 16:29:45 275

原创 单例模式、策略模式

一、单例模式1、概念保证一个类仅有一个实例,并提供一个访问它的全局访问点2、单例模式的实现 -- 以创建div节点为例var createDiv = (function(){ var instance; var createDiv = function(html){ if(instance){ return instance...

2020-01-09 12:37:30 332

原创 layui项目知识点总结

1、input单选框——获取选中值和设置选中值需求:修改数据段时候,需要先去取到用户类型,然后让单选框对应的值选中。原生js获取选中值 & 设置选中值//获取if(document.getElementById("reserve_yes").checked){ reserve=yes;}else if(document.getElementById("reser...

2019-12-10 21:42:03 611

原创 微信小程序中setInterval使用的一些问题

1、微信小程序如何取得input框的值 <input class="carInput" placeholder-style="font-size:26rpx" placeholder='请输入车辆唯一标识ID' value="{{carId}}" bindinput='getCarId'/>placeholder-style 可以定义placeholder的样式 ...

2019-11-19 10:26:45 2931

原创 前端实现请求进度条

1、前端实现请求进度条一般使用readyStatechange事件探测HTTP请求的完成。当正在加载服务器的响应时,XMLHttpRequest对象会发生progress事件,通常每隔50毫秒左右。所以用这些事件可以给用户反馈请求的进度。下载的progress事件属于XMLHttpRequest对象 上传的progress事件属于XMLHttpRequest.upload对象。ev...

2019-11-09 10:33:35 10127

原创 中国工商银行编程题 & 面经整理

一、中国工商银行编程题aabccccc 输出a2bc5(js实现)let optr = readline().split("");var result=''; result=optr[0]; var count=1; for(var i =1;i< optr.length;i++){ if(optr[i]===optr[i-1]){ ...

2019-10-14 21:19:12 3719

原创 数组乱序实现 & 懒加载 & http缓存

一、数组乱序实现方法一:实现算法性能不好ary.sort(function(){ return Math.random()>0.5?1:-1})方法二:var len = ary.length; for (var i = 0; i < len - 1; i++) { var index = parseInt(Math.random() * ...

2019-09-10 18:07:48 219

原创 vue的mvvm原理简单实现

1、实现原理图2、实现思路三大模块:模板编译主要简单处理两种:1指令编译 v-modle 2 文本编译 {{data}}对应 更新元素数据(input) 方法 更新文本数据方法数据劫持遍历传进来的数据对象,分别给对象的属性重写get \ set 方法利用了Object.defineProperty观察者将劫持和编译联系起来 ----》发布订阅订阅...

2019-08-17 16:34:23 248

原创 js的一些有用技巧&字符串、数组操作

1、保留数字两位小数实现一:number.toFixed(2)参数:小数点后数字的个数;介于 0 到 20 (包括)之间,实现环境可能支持更大范围。如果忽略该参数,则默认为 0该方法不会改变原数值。该方法会返回一个数值的字符串表现形式,保留 digits 位小数。修改了数据类型:从数字到字符串实现二:Math.round()Math.round()方法:四舍五入,取得是...

2019-06-25 11:57:26 1275 1

原创 深入浅出Webpack(二)

Webpack实战使用ES6Bable是一个 javaScript编译器TypeScript使用ES6Bable是一个 javaScript编译器在Bable执行编译的过程中,会从项目根目录下的.babelrc文件中读取配置。是一个json格式的文件{ "plugins": [ [ "transform-runtime", { "poly...

2019-06-05 11:43:27 210

原创 深入浅出Webpack(一)

Webpack介绍及安装配置介绍模块化webpack介绍安装Webpack使用Loader使用Plugin介绍模块化1、模块化很久以前,开发网页要通过命名空间的方式来组织代码。JQuery库将他的API都放在window.$下。这样做存在的问题:(1)命名空间冲突(2)无法合理管理项目的版本和依赖(3)无法控制依赖的加载顺序模块化模块化规范核心思想Common...

2019-06-04 12:18:58 706

原创 网路与http协议一些知识点整理

1、网络的五层结构常见的ISP,有分层,自己连到区域,区域再连到国际。ISP(Internet Service Provider),互联网服务提供商。网络边缘:外界设备连接到服务器,端系统如何接入因特网网络中心:网络核心就是由互联网端系统的分组交换机和链路构成的网状网络。主机:与网络相连的设备。网络分层:2、协议 3、Http协议和tcp的协议...

2019-05-17 15:56:34 189

原创 函数式编程

1、简单说,"函数式编程"是一种"编程范式"(programming paradigm),也就是如何编写程序的方法论。一、引例:输出在网页上输出 “Hello World”。一般实现document.querySelector('#msg').innerHTML = '<h1>Hello World</h1>'另一种实现 function pr...

2019-05-14 22:08:07 147

原创 发布订阅模式与观察者模式

一、概念观察者模式(Observer Pattern):观察者模式定义了对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知,并自动更新。观察者模式属于行为型模式,行为型模式关注的是对象之间的通讯,观察者模式就是观察者和被观察者之间的通讯。观察者模式有一个别名叫“发布-订阅模式”发布订阅模式(Pub-Sub Pattern):经过时间的沉淀,已经独立...

2019-05-05 15:52:34 518

原创 TDD介绍与demo练习

1、TDD 测试驱动开发(Test Driven Development)TDD三定律  1、在编写不能通过的单元测试前,不可编写生产代码。   2、只可编写刚好无法通过的单元测试,不能编译也算不通过。   3、只可编写刚好足以通过当前失败测试的生产代码。  总的来说就是先写测试再写生产代码,写一个测试就应该立即写它的实现代码。2、环境安装及准备(1)模块的引入方式...

2019-05-02 18:17:04 819

原创 JS的防抖与节流

1、提出以下一种场景(1)搜索框搜索条目的时候,每次onkeyup都会触发一次请求,返回xhr文件,一直输入11111,则每次都会请求。(2)IE中使用onresize事件处理程序的时候,需根据浏览器窗口大小,来对dom进行频繁操作,改事件也会连续触发。只要是代码是周期性执行的,都应该使用节流。目的:防止回调函数每一次都执行定义:函数防抖是要在每完成等待某个时间后去...

2019-04-30 15:56:23 267 1

原创 js迭代器

1、迭代器是一个每次访问集合序列中一个元素的对象,并跟踪该序列中迭代的当前位置。JavaScript 提供了许多迭代集合的方法,从简单的for循环到forEach()、map()和filter()。目的:解决繁重的数据处理(在不去了解对象内部情况的前提下,对对象内部进行操作)封装一个自己的迭代器,首先暴露一个接口,这个接口负责实例化构造器类Iterator(array)func...

2019-04-29 17:22:00 3615

原创 函数柯里化

一、柯里化:把接收多个参数的函数变换成接收一个单一参数的函数(单一参数为多个参数中的第一个)函数柯里化思想:一个JS预处理的思想,降低通用性,提高适用性。特点:参数复用 需要输入多个参数,最终只需输入一个,其余通过arguments来获取 提前返回 避免重复去判断某一条件是否符合,不符合则return 不再继续执行下面的操作 延迟执行 避免重复的去执行程序,等...

2019-04-27 12:22:46 20215 1

原创 js数据结构与算法

一、javascript基础1.javascript的数据类型有:数字、字符串、函数、对象、undefined、null和数组、日期、正则表达式。2.变量作用域:本地变量和全局变量。在一个函数里,变量没有使用var 关键字,则是申明或者引用了全局变量。3.转换为布尔值为假值的有|undefined||-null-|| +0,-0,NaN |"" 空字符串4.创建对象两种方式:构造函...

2019-04-13 17:06:40 2289 1

原创 电商小程序实战之mpvue-weui简介及mock数据

一、Mpvue-WeUI是基于 mpvue 的一个小程序 UI 框架, 保留了 weui 的视觉规范,旨在提高小程序开发体验,同时让用户的使用感知更加统一。基于 Vue.js 的小程序开发框架,从底层支持 Vue.js 语法和构建工具体系。微信小程序请求接口,官网第三方的网络请求库 fly,主要是小程序不支持ajax,所以flyio相当于在axios的基础上把这些兼容了.引入var ...

2019-04-10 21:32:27 1576

原创 微信小程序开发过程中知识点总结

1、保存用户id,用缓存,其他页面再取出来2、一个弹框的显示与隐藏控制至于使用 wx:if 还是 hidden,一般来说,wx:if 有更高的切换消耗而 hidden 有更高的初始渲染消耗。效果代码 <view class="iconItem" bindtap='toFilter'> <text>筛选</text> ...

2019-04-01 12:04:14 493

原创 promise和fetch

1、promise是一个对象,代表异步操作,有3种状态,pending\resolved\rejected特点(1)对象的状态不受外界影响(2)一旦状态改变就不会再改变构造一个promise实例var mypromise = new Promise(function(resolve,reject){ //...some code if(成功){ ...

2019-03-21 15:51:03 700

原创 node.js安装、配置、测试及服务器端搭建文件返回给前台响应

一、node.js的安装安装教程很多,自己查询,安装完以后,检查一下版本确认安装成功二、测试文件放在桌面,向service.js写入如下代码var http = require('http');http.createServer(function (request, response) { // 发送 HTTP 头部 // HTTP 状态值: 200 :...

2019-03-21 11:46:12 299

空空如也

空空如也

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

TA关注的人

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