- 博客(66)
- 收藏
- 关注
原创 个人项目中频繁使用lodash api
1.替代可选链操作 let obj = { a: 1, b: { c: 2, d: null, }, e: null, }; let value = _.get(obj, "b.d.f.g", "3"); console.log(value); // 32.深拷贝let data = {};let tableData = _.cloneDeep(data);3.创建多个值相同.
2021-11-24 11:00:40
275
原创 for循环中调用axios获取数据
业务需求,需要从一个接口中获取到一组数据,根据数据中的id去调取另一个接口得到最终的数据。直接在for循环中调用axios在循环外得不到接口的数据: getData() { let data = []; for (let i = 0; i < newArr.length; i++) { let json = { scheduleId: this.printForm.scheduleId,
2021-02-09 17:56:55
3259
原创 js实现数组深拷贝
// 单层数组深拷贝concat || ...//多层数组深拷贝deepCopy(obj){//只拷贝对象if(typeofobj!=="object")return;//根据obj的类型判断是新建一个数组还是一个对象letnewObj=objinstanceofArray?[]:{};for(letkeyinobj){//遍历obj,并...
2020-08-10 16:59:23
281
原创 vue表格内使用字典显示数据
// 表格中<el-table-column prop="channelName" :formatter="getChannelName" header-align="center" align="center" label="销售渠道"></el-table-column>// methods中getChannelName(row) { for (let i in this.tableTreeDdataPlatform.content) { if (t.
2020-07-30 13:57:20
3786
原创 js计算字符串的长度
let{length:len}='dsadasjfiasjdwqjkldjasd';console.log(len)//计算字符串长度
2020-07-16 16:32:08
537
原创 js误差检查函数
functionwithinErrorMargin(left,right){ returnMath.abs(left-right)<Number.EPSILON*Math.pow(2,2); } 0.1+0.2===0.3//false console.log(withinErrorMargin(0.1+0.2,0.3));//true...
2020-07-16 16:31:25
278
原创 es6去除两个数组中相同的对象
letarr1=[{id:1},{id:2},{id:3},{ id:4},{ id:5}]letarr2=[{ id:1},{ id:2},{id:3}]arr1=arr1.filter(item=>{letidList=arr2.map(v=>v.id)return!idList.includes(item.id)})...
2020-07-09 14:53:22
2134
原创 解决浅拷贝简单操作
写项目中 经常遇到这样的情况let a=[0,1,2,3,4],let b = a;b[0] = 1;console.log(a); // [1,1,2,3,4]console.log(b); // [1,1,2,3,4]what? 这和预想的不一样啊,脑海里马上闪过一个词:浅拷贝,原理就不多说 说一下解决的办法利用JSON对象的parse和stringify来解决...
2020-04-14 10:55:56
193
原创 页面转化成海报图
应需求 需要把页面转化成海报图 第一下看到这个需求一脸懵逼 不知道从何下手后来探(bai)索(du)了一下才发现原来可以用html2canvas来生成图片方法记录一下 以备不时之需用npm install一下html2canvas 然后再页面中引入就可以愉快的开始了页面上:<divclass="poster-btn"@click="downLoad('post...
2019-11-26 17:17:10
220
原创 微信小程序动态循环渲染
最近在小程序开发遇到一个问题 当我进行request请求的时候 如果参数是动态 那我得写个for循环把参数循环出来进行request请求 比如这样 for (let i = 0; i < data.length; i++) { wx.request({ url: ''+'/'+data[i].item, method: '', success: ...
2019-05-31 17:28:15
2130
原创 微信小程序根据腾讯地图计算距离
首先引入核心类var QQMapWX = require('../../utils/qqmap-wx-jssdk.js');然后实例化var qqmapsdk = new QQMapWX({key: '开发密钥(key)' // 必填});这个开发者密钥要自己去腾讯地图官方注册申请在Page({})中使用下列代码var _this = this;...
2019-05-07 15:41:41
4636
1
原创 数组去重
最近写小程序碰到很多要进行筛选去重的步骤 在此记录一下方法var arr = [1,1,2,2,3]var newArr = arr.filter(function (element, index, self) {return self.indexOf(element) === index;});console.log(newArr);得到的结果是后来发现这个办法...
2019-05-06 13:20:55
189
原创 Node安装以及环境变量配置
下载安装就是傻瓜式安装 一直点next 这里就不复述了安装位置自己选择目录尽量别放在c盘 这个看个人爱好 我放在D盘接着在cmd中输入node -v 以及npm -v查看版本号 如果出现了则表示安装成功接下来进入到安装node的文件夹创建这两个文件node_cache和node_global然后打开cmd 输入 这两行代码npm config set ...
2019-04-18 11:53:35
491
原创 js的预编译:AO与GO
函数在执行之前会进行预编译1、创建AO对象2、找到形参和变量声明,将变量和形参名作为AO属性名,值为underfined3、将实参值和形参值统一4、在函数体里面找到函数声明,值作为跟AO属性对应的值。简单谈一下js的预编译过程。function test(a,b){ console.log(a) var a=123; function a(){}...
2019-04-09 13:38:34
346
原创 vue中mint-ui使用实例
介绍一下mint-ui的特性特性介绍 Mint UI 包含丰富的 CSS 和 JS 组件,能够满足日常的移动端开发需要。通过它,可以快速构建出风格统一的页面,提升开发效率。 真正意义上的按需加载组件。可以只加载声明过的组件及其样式文件,无需再纠结文件体积过大。 考虑到移动端的性能门槛,Mint UI 采用 CSS3 处理各种动效,避免浏览器进行不必要的重绘和重排,从而...
2019-03-23 17:07:36
1040
原创 AMD CMD CommonJS ES6区别
简单来说 AMD CMD都是属于ES5语法 CommonJS属于node后端1.AMD 是RequireJS 在推广过程中对模块定义的规范化产出(AMD 是提前执行),不过在requireJS的2.0开始也改成了延迟执行(写法不同,处理方式不同) AMD 即Asynchronous Module Definition,中文名是“异步模块定义”的意思。它是一个在浏览器端模块化开...
2019-02-27 10:40:34
203
原创 webstorm快捷键
下面是Webstorm的一些常用快捷键:ctrl + shift + n: 打开工程中的文件,目的是打开当前工程下任意目录的文件。ctrl + j: 输出模板ctrl + b: 跳到变量申明处ctrl + alt + T: 围绕包裹代码(包括zencoding的Wrap with Abbreviation)ctrl + []: 匹配 {}[]ctrl + F12: 可以显示当前文件的结...
2018-11-01 10:50:43
111
原创 react脚手架搭建
由于我们在安装的过程中要使用到npm 因此需要先前安装好node.js直接到官方下载即可 一般建议大家下载稳定版的(左边那个!)知道你们懒,咯官网戳→_→ node.js官网:https://nodejs.org/en/判断安装成功与否的标志↓ 打开cmd命令行,输入 node -v 和 npm -v 来查看版本号,如果显示则安装完成然后我们就可以开始create-...
2018-10-16 09:32:35
448
原创 express基本用法
expressconst express = require('express')const app = express()app.listen(8080, () => { console.log('port created successfully')}) express会把所有的请求方式都作为方法挂载到app对象中,客户端发送请求并且会执行对应的回调函数co...
2018-09-14 20:31:50
774
原创 express
express1.创建方式(1)导入express模块 var express=require('express'); (2) 调用方法,返回appvar app=express(); (3)端口监听 最后执行app.listen(55555);//异步2.定义方式 根据不同的客户端请求,返回不同的响应3.app上的方法(app本质:请求监听函数)g...
2018-09-14 20:29:36
166
原创 Node 创建 Web 客户端
Node 创建 Web 客户端需要引入 http 模块,创建 client.js 文件,代码如下所示:实例:var http = require('http');// 用于请求的选项var options = {host: 'localhost',port: '8080',path: '/index.html'};// 处理响应的回调函数var callba...
2018-09-13 17:17:30
316
原创 Node 创建 Web 服务器
以下是演示一个最基本的 HTTP 服务器架构(使用 8080 端口),创建 server.js 文件,代码如下所示:实例:var http = require('http');var fs = require('fs');var url = require('url');// 创建服务器http.createServer( function (request, respon...
2018-09-13 17:13:36
235
原创 Node JS http模块
前言本人所发的NodeJS系列学习笔记参考了一些书籍、官方文档以及一些前辈的代码及注释,可能有些地方理解的不对。如果有误,欢迎到我的github上提出。当然,希望可以点个星星。node-httpNode.js提供了http模块,用于搭建HTTP服务端和客户端。创建Web服务器server.js/** * node-http 服务端 */let http = requ...
2018-09-13 09:56:46
323
原创 TCP和UDP的区别
1、TCP与UDP区别总结:1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付Tcp通过校验和,重传控制,序号标识,滑动窗口、确认应答实现可靠传输。如丢包时的重发控制,还可以对次序乱掉的分包进行顺序控制。3...
2018-09-11 19:14:06
92
原创 fs模块文件操作
1、异步读取 fs.readFile( url , code , callback); 2、同步读取 fs.readFileSync( url , code ); 1 var fs = require('fs'); 2 // 异步读取 3 fs.readFile('input.txt', function (err, data) { 4 if (er...
2018-09-11 19:08:23
360
原创 web前端高级工程师,面试题
1:简述前后端通讯的过程(三次握手,四次挥手)?TCP(Transmission Control Protocol) 传输控制协议 1、TCP三次握手和四次挥手的过程图 tcp的6种标志位的分别代表:SYN(synchronous建立联机)ACK(acknowledgement 确认)PSH(push传送)FIN(finish结束)RST(rese...
2018-09-11 08:59:09
17436
原创 js总结
JS总结:1、javascript的特点是一种嵌入在网页中的程序段。(客户端脚本语言)是一种解释型语言,被浏览器解释执行。JavaScript借用了Java的名字,也使用了部分java的语法。增强客户端的交互功能。2、在网页中嵌入js的方式内嵌式:<script>……</script>外联式:<script src="aa....
2018-09-04 17:36:30
159
原创 前端总结(一)
HTML概述 特点 发展历程和当前版本 1.1 html 概述 超文本标记语言 超文本 比普通文本要强大 他可以放音频,视频 标记语言 由 标签和文字组成 它是一种描述性的语言, 它没有逻辑性 html编写工具, 主要组成部分和书写规范 2.1主要组成部分 <html> -----文档声明 <head></h...
2018-09-03 19:48:59
195
原创 vue-cli(vue脚手架)超详细教程
都说Vue2简单上手容易,的确,看了官方文档确实觉得上手很快,除了ES6语法和webpack的配置让你感到陌生,重要的是思路的变换,以前用jq随便拿全局变量和修改dom的锤子不能用了,vue只用关心数据本身,不用再频繁繁琐的操作dom,注册事件、监听事件、取消事件。。。。(确实很烦)。vue的官方文档还是不错的,由浅到深,如果不使用构建工具确实用的很爽,但是这在实际项目应用中是不可能的...
2018-08-30 09:16:53
19663
3
原创 vue项目中,App.vue如何调用
App.vue是我们的主组件,所有页面都是在App.vue下进行切换的。其实你也可以理解为所有的路由也是App.vue的子组件。所以我将router标示为App.vue的子组件。 index.html文件入口 src放置组件和入口文件 node_modules为依赖的模块 config中配置了路径端口值等 build中配置了webpack的基...
2018-08-20 11:46:16
16723
1
原创 VUE如何加载main.js
在工程文件中使用main.js来加载App.vue文件的,但没有代码写出来加载main.js的,而index.html中只有一个自定义标签app,那么工程是如何加载到main.js文件的呢?如果你是用vue.js官网提供的脚手架工具并沿用默认配置的话, 你执行npm run dev的时候会出来页面, 是因为你根目录下的package.json文件里script配置了"dev": ...
2018-08-20 11:42:27
323
原创 在HTML中增加meta name="viewport"控制页面不随着放大缩小变形的实现方式
PC端添加以下meta内容: <head> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">....</head> ...
2018-08-20 11:32:36
1620
转载 rem和em的区别
一、 rem的特点:1、rem的大小是根据html根目录下的字体大小进行计算的。2、当我们改变根目录下的字体大小的时候,下面字体都改变。3、rem不仅可以设置字体的大小,也可以设置元素宽、高等属性。二、em的特点:1、字体大小是根据父元素字体大小设置的。三、代码部分1、rem的代码。<!DOCTYPE html><html><he...
2018-08-20 10:07:29
314
原创 vue组件非父子之间通信
视图如下:单击点击后:下列为实现代码:html:<dvi id="app"> <brother></brother> <hr> <sbrother></sbrother></dvi> <template id="bro
2018-08-15 20:41:14
162
原创 vue中v-if和v-show的区别
相同点两者都是在判断DOM节点是否要显示。不同点1、实现方式v-if是根据后面数据的真假值判断直接从Dom树上删除或重建元素节点v-show只是在修改元素的css样式,也就是display的属性值,元素始终在Dom树上。2、编译过程v-if切换有一个局部编译/卸载的过程,切换过程中合适地销毁和重建内部的事件监听和子组件; v-show只是简单的基于css切换;...
2018-08-14 08:53:13
136
原创 class命名规范
常见class关键词:布局类:header, footer, container, main, content, aside, page, section 包裹类:wrap, inner 区块类:region, block, box 结构类:hd, bd, ft, top, bottom, left, right, middle, col, row, grid, span 列表类:li...
2018-08-09 10:55:23
346
原创 JS组合继承相比原型链继承的优势
原型继承:// '父'构造函数function Father() { this.name = 'foo'; this.family = ['Jack','Tom','James'];}Father.prototype.sayName = function () { console.log(this.name);};Father.prototyp...
2018-08-08 10:24:45
323
原创 bootstrap中把row等分成5份
<!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml"><head> <meta charset="utf-8" /><title>屏幕五等分</title><meta na
2018-08-03 09:28:40
8048
转载 prototype与__proto__区别
__proto__是每个对象都有的一个属性,而prototype是函数才会有的属性!!! 使用Object.getPrototypeOf()代替__proto__!!!一、prototype几乎所有的函数(除了一些内建函数)都有一个名为prototype(原型)的属性,这个属性是一个指针,指向一个对象,而这个对象的用途是包含可以有特定类型的所有实例共享的属性和方法。prototype是通过...
2018-08-02 14:28:20
317
原创 Bootstrap api中文
表格参数:名称 标签 类型 默认 描述 - data-toggle String ‘table’ 不用写 JavaScript 直接启用表格。 classes data-classes String ‘table table-hover’ 表格的类名称。默认情况下,表格是有边框的,你可以添加 ‘table-no-b...
2018-08-01 10:51:10
487
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人