- 博客(26)
- 收藏
- 关注
原创 前端基础——手写 (深拷贝、防抖、节流、call、apply、instanceof)
1、手写深拷贝什么是浅拷贝?如果属性是基本类型,拷贝的就是基本类型的值,如果属性是引用类型,拷贝的就是内存地址 ,所以如果其中一个对象改变了这个地址,就会影响到另一个对象。什么是深拷贝?将一个对象从内存中完整的拷贝一份出来,从堆内存中开辟一个新的区域存放新对象,且修改新对象不会影响原对象常用的深拷贝方法:JSON.parse(JSON.stringify(obj))缺点:不能拷贝 undefined、函数、正则会转成空对象、data 会调用toString()等。手写深拷贝:func
2022-02-15 11:58:06 626
转载 手写 New
1、手写Newnew 到底做了什么手写一个newnew到底做了什么function Person(firtName, lastName) { this.firtName = firtName; this.lastName = lastName;}Person.prototype.getFullName = function () { return `${this.firtName} ${this.lastName}`;};const tb = new Person('xi
2021-11-22 15:49:43 157
原创 JavaScript中数组和对象的几种循环遍历
数组1、forEachlet arr = [1, 2, 3, 4]arr.forEach((item, index, arr) => { console.log(item, index, arr)})不改变原数组 不能跳出循环接收三个参数,项目值、索引、数组本身2、maplet arr = [1, 2, 3, 4]arr.map((item, index, arr) => { console.log(item, index, arr)})不改变原数组 不能跳出循
2021-11-19 15:29:54 1853
原创 JavaScript数组、字符串的方法
数组1、pusharr.push() : 在数组结尾处向数组添加一个新的元素(改变原数组)返回值为新数组的长度2、unshiftarr.unshift():在开头向数组添加新元素(改变原数组)返回值为新数组的长度3、poparr.pop():从数组中删除最后一个元素(改变原数组)返回值为被删除的元素4、shiftarr.shift():删除数组中第一个元素(改变原数组)返回值为被删除的元素5、toStringarr.toString():把数组转换为字符串以逗号分隔(不改变原数
2021-11-19 11:47:48 696
原创 创建一个vue项目
1、安装vue cli3npm install -g @vue/cli2、创建项目vue create demo(demo 项目名)3、配置项目default 为默认配置manually select features 为手动配置② 是否使用history路由③ 选择css处理器:sass/scss④ 何时检测⑤ 选择lint的配置文件如何存放(第一个是独立文件夹位置,第二个是在package.json文件里)⑥ 是否保存本次创建项目的配置项,用于下次快速创建项目完成项目创建配置
2020-12-24 16:56:37 202
转载 记录Git操作流程
Git 工作流master分支整个项目的主分支feature分支功能分支用来开发新功能的分支,开发完成后合并到release分支release分支预发布分支,需要测试的功能都合并到该分支上进行测试。hotfix分支修复BUG分支,从master拉去,测试完直接合并到master。Git 使用规范流程参考阮一峰Git使用规范第一步新建分支首先,每次开发新功能,都应该新建一个单独的分支# 获取主干最新代码 $ git checkout master $ git pull
2020-12-22 18:21:36 99
原创 uni-app 用户拒绝授权后再次调起授权页面 和 在小程序中打开第三方导航地图
1、用户拒绝授权后再次调起授权页面uni.getSetting({ success(res) { if (res.authSetting['scope.userLocation']) { console.log("userLocation位置功能已授权") // 如果已授权,直接获取对应参数 uni.getLocation({ ...
2020-04-15 11:48:41 3560 1
原创 Vue中插槽的使用
Vue插槽常用的分为三种:默认插槽、具名插槽和作用域插槽。1、默认插槽:child.vue<template> <div> <slot></slot> </div> </template>father.vue<template> <div> <Chil...
2020-04-09 15:49:56 208
原创 在vue中使用防抖和节流
在vue中使用防抖和节流。先在utils.js中定义防抖和节流函数。// 节流export function throttle(fn, delay) { let prev = Date.now(); return function() { let now = Date.now(); if (now - prev >= delay) { fn.apply(this, a...
2020-04-02 17:37:57 258
转载 Vue-router结合transition实现app动画切换效果
Vue-router结合transition实现app动画切换效果1、配置路由页面增加配置给路由添加一个goBack方法。import Vue from 'vue'Router.prototype.isBack = trueRouter.prototype.goBack = function () { this.isBack = true window.history.go(...
2020-03-27 17:56:42 649
转载 在vue中禁止屏幕滚动,禁止屏幕滑动
最简单的方法在移动端实现:@touchmove.prevent在PC端实现: @mousewheel.preventjs实现function fixedScroll (boolean = false) { const scrollTopElement = document.documentElement || document.body const body = document....
2019-11-28 16:21:42 2170
转载 Vue +Element UI +vue-quill-editor 富文本编辑器及插入图片自定义
1.安装npm install vue-quill-editor --save2.在main.js中引入import VueQuillEditor from 'vue-quill-editor'import 'quill/dist/quill.core.css'import 'quill/dist/quill.snow.css'import 'quill/dist/quill.bub...
2019-10-31 17:56:23 1168
转载 节流和防抖
节流某个时间段内,只执行一次let throttle = function(func, delay) { let timer = null; return function() { if (!timer) { timer = setTimeout(function() { func.apply(this, arguments);...
2019-10-23 15:20:13 119
转载 数组降维和数组去重
二维数组降维function reduceDimension(arr) { return Array.prototype.concat.apply([], arr);}多维数组降维function reduceDimension(arr) { let tmp = arr; let result = arr; while(tmp instanceof Arr...
2019-09-17 19:09:50 444
原创 vue由多个值改变disabled属性
computed: { isDisabled () { return !(this.patient && this.message && this.condition && this.doctor && this.date) } }
2019-09-11 13:40:59 3184 1
原创 vue中监听多个值
computed: { btnObj () { let {patient, message, condition, doctor, date} = this return {patient, message, condition, doctor, date} } }, watch: { btnObj: { handler (new...
2019-09-11 13:38:18 1073
原创 vue中导入导出Excel
以下仅个人做笔记使用:1、安装依赖:cnpm install --save xlsx file-saver2、下载两个js文件:Blob.js和Export2Excel.js(放在最后面)3、添加导出按钮:<button @click="derive">导出数据</button>4、添加导出事件: derive() { this......
2019-09-11 13:36:21 640 2
原创 vue+element,改变element中的功能
以下仅作为个人笔记:改变element中upload上传后不消失问题在element中调用upload进行上传,当达到上传限制的时候,上传组件还存在。先给组件添加类名,在data中定义 hideUpload: false,在成功的钩子中设置hideUpload为true,在删除的钩子中设置为false。 .hide .el-upload--picture-card { di...
2019-08-02 15:27:17 359
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人