
js
一只皮皮璐
每天一块砖,想盖一栋房
展开
-
js 计算精度问题及解决方案
js 计算精度问题及解决方案原创 2023-01-18 16:45:30 · 2797 阅读 · 0 评论 -
vue 中由浅拷贝引发问题的一些场景
vue 中由浅拷贝引发问题的一些常见场景原创 2023-01-17 16:25:39 · 1111 阅读 · 0 评论 -
除了npm还有哪些组件共用方式
问题: 除了npm 你还知道哪些多项目组件共用的方式解决方案:1.cdn将组件打包发布到服务器上优点:缩小项目打包体积缺点:维护成本高,更新组件时需要更新服务器上的文件推荐指数:※2.npm包现在最常用的手段缺点:国内镜像资源同步时间慢npm 可以直接install Git仓库地址 ,这种方式常用来做测试npm 包的手段3.git submodulegit可以使用git submodule直接将一个git仓库当做子模块放在项目中,只需要git submo原创 2022-02-14 20:37:14 · 576 阅读 · 0 评论 -
es6合并对象
今天面试时考到对象合并的方法,当时只想到两种,在这里总结一下吧1. Object.assignlet obj1 = {a:1,b:2}let obj2 = {c:3}let obj3 = Object.assign({},a,b)// obj3 是深拷贝,obj3是一个新对象let obj4 = Object.assign(a,b)// 目标对象a也变了2. $.extend()let obj1 = {a:1,b:2}let obj2 = {c:3}let obj3原创 2021-01-04 15:23:00 · 6944 阅读 · 0 评论 -
面试系列(三)js中 this,apply ,call和bind
函数调用的四种方法(1)作为一个函数调用 var name = "windowsName"; function a() { var name = "Cherry"; console.log(this.name); // windowsName console.log("inner:" + this); // inner: Window } a(); console.log("outer原创 2020-09-12 16:04:14 · 199 阅读 · 0 评论 -
面试系列(二)js 的基础知识
1.基本类型和引用类型 基本类型: string,number,boolean 引用类型:object ,array2.手写深拷贝function deepClone(obj) { if(typeof obj !== 'object'){ return obj } let result if(obj instanceof Array){ result = [] }else { result = {} } for (let ke...原创 2020-09-08 11:15:02 · 148 阅读 · 0 评论 -
js 正则表达式(1)
正则表达式是前端面试中的高频考点,但是正则又像一块裹脚布一样又臭又长。最近看一些博客找到一些规律,分享在这里。一句话解释正则正则是匹配模式,要么匹配字符串,要么匹配位置。两个不确定1. 长度不定 使用量词 {2,5} =》 /ab{2,5}c/ 表示在b在a和c之间出现有2-5次不等。1. 字符不定 使用字符组 [123] =》/ab[123]c/ 表示在b和之间可能是1或2或3贪婪和惰性贪婪:在能力范围内有多少要多少{n}=>确定的n次{n,} =...原创 2020-07-30 11:45:27 · 216 阅读 · 0 评论 -
你的代码是否存在硬编码
硬编码:硬编码是指将可变变量用一个固定值来代替的方法。如果我们的代码中有大量的硬编码,之后再修改维护成本就会很高。代码的延展性就会很差。硬编码:if(a==2) return false;不是硬编码 if(a==b) return true;减少硬编码的问题...原创 2020-07-01 13:50:04 · 1078 阅读 · 1 评论 -
axios 取消重复请求
待写文章转载 2020-06-01 15:39:10 · 178 阅读 · 0 评论 -
js 闭包解密
闭包:说起闭包肯定离不开变量作用域和变量的生命周期。变量作用域(全局作用域和局部作用域)全局作用域:(1)在函数的外部使用var声明的变量。(2)在函数的外部直接给标识符赋值,这样会隐式声明为全局变量。(3)使用window全局对象来直接声明。局部作用域:在函数内部声明的变量的作用域就是局部作用域作用域链的形成:函数是可以创造作用域的,在函数中如果要查找一个变量,在函数...原创 2020-03-15 19:15:54 · 227 阅读 · 1 评论 -
js 中的面向对象
我们常见一些后端语言中经常使用面向对象,但是在js中提到面向对象就很少。在js中我也可以利用函数的作用域轻易的实现类(一般类名首字母大写),同时他也可以具有公开属性和私有属性let Book = function(id,name,type){ var num = 5; var getNumber = function(){ return num }...原创 2020-03-10 11:27:03 · 176 阅读 · 0 评论 -
Unexpected end of JSON input while parsing near错误解决办法
npm install出现”Unexpected end of JSON input while parsing near”的错误。运行 npm cache clean --force。转载 2019-11-29 10:54:12 · 532 阅读 · 0 评论 -
vchart 堆叠图求总和
who is vChart?vChart 是基于echart封装的一个图表组件。使用起来比echart要简洁方便,但是想要实现一些复杂的功能相对就没有echart方便了。踩坑堆叠柱状图求总和(这个问题也可以叫堆叠图顶部显示一个即不是维度又不是指标的值)1.首先看一下堆叠图顶部显示的样子<template> <ve-histogram :data="c...原创 2019-11-25 16:32:57 · 2582 阅读 · 8 评论 -
npm install 安装指定版本
在使用npm install 安装的时候,默认的情况下都是安装这个插件最新的版本但是很多情况下,我们不需要安装指定的版本,而是需要安装指定的某一个版本。只需要在插件名称的后面加上版本号就好了npm install webpack@4.41.2 -g如果我们的记不清楚具体的版本号,我们可以加通配符即可npm install webpack@3.1.x -gnpm in...原创 2019-11-24 13:31:17 · 4999 阅读 · 1 评论 -
ES6 reduce的实现
reduce 方法对累计器和数组中的每个元素(从左到右)应用一个函数,将其简化为单个值。reducer 函数接收4个参数:Accumulator (acc) (累计器) Current Value (cur) (当前值) Current Index (idx) (当前索引) Source Array (src) (源数组)有默认参数const arr = [1, 2, 3]l...转载 2019-11-20 17:14:21 · 221 阅读 · 0 评论 -
js 获取今天的前几天或后几天的方法
想要获取当前时间,我们都知道 new Date()非常简单容易,但是想要获取昨天,明天,后天就没这么简单了 莫慌 一样的简单new Date(new Date().setDate(new Date().getDate() - 1))说明: -1 表示 获取昨天的时间 +1表示获取明天的时间 其它同理...原创 2019-11-18 16:18:43 · 1554 阅读 · 0 评论 -
JS数组求并集,交集和差集
转载一篇写的很好的博客https://excaliburhan.com/post/js-set-operation.html需求场景最近,自己项目中有一些数组操作,涉及到一些数学集的运算,趁着完成后总结一下。简化问题之后,现有两数组a = [1, 2, 3],b = [2, 4, 5],求a,b数组的并集,交集和差集。方法选择JS在ES6,ES7之后,新增了一些数组方法,如...转载 2019-11-14 10:25:47 · 171 阅读 · 0 评论 -
js 中if...else优化/重构
在写一些逻辑的过程中,我们免不了会写一个if...else的逻辑。但是如果过多的if...else就会使代码显的不整洁,不优美。例如:贴上源码batchEdit(val) { if (val === 1275) { this.batchDelete(); } else if (val === 1276 || val === 12...原创 2019-11-11 16:42:08 · 2106 阅读 · 0 评论 -
promise 在项目中的实际意义
promise 是解决异步的神奇,今天就要说说promise在实际的项目中解决的问题promise语法var promise1 = new Promise(function(resolve, reject) { setTimeout(function() { resolve('foo'); }, 3000);});promise1.then(function(val...原创 2019-10-16 15:15:42 · 952 阅读 · 0 评论 -
一张图看清js 中的存储
一张图说明浏览器中的存储。原创 2019-10-12 11:26:09 · 114 阅读 · 0 评论 -
ES6 Generator函数
Generator函数是ES6引入的新函数,用于异步编程。语法特点:1.function 关键字和函数名之间有一个*号2. 函数内部使用yeild语句3.函数执行后拥有next函数function* g() { yield 'a'; yield 'b'; yield 'c'; return 'ending';}g(); // 返回一个对象...原创 2019-10-09 14:08:07 · 146 阅读 · 0 评论 -
Symbol.toPrimitive
Symbol.toPrimitive 是内置的Symvbol的值。作为对象的函数值属性存在,当一个对象转换为初始值时调用。const object1 = { [Symbol.toPrimitive](hint) { if (hint == 'number') { return 42; } return null; }};console....原创 2019-10-08 16:06:50 · 2980 阅读 · 0 评论 -
js函数 传参 解密
js 中的函数我们用了太多太多次了,但是关于函数的参数今天还是要说道说道。1.js函数的参数分为两种,一种是显示参数,一种为隐式参数。显示参数:在函数定义时列出隐式参数:在函数调用时传递的参数值2.参数规则(三不指定规则) 不指定显示参数的类型 不指定隐式参数的类型 不指定隐式参数的个数3.显示参数不用多说,天天用的就是function myFu...原创 2019-09-19 11:24:32 · 405 阅读 · 0 评论 -
如何从谷歌上搜索
https://blog.youkuaiyun.com/weixin_43606158/article/details/100531733转载自这篇文章,如果可以用谷歌,很厉害朋友们在开发过程中肯定会遇到没遇到过的东西需要去查资料啊,查各种资源等等,有很多种方法,比如:google,bing,baidu,优快云,思否,掘金,简书,博客园,知乎等等等等太多了,笔者不一一述说,但是可能会浪费掉很多无用的...转载 2019-09-17 16:42:21 · 1870 阅读 · 0 评论 -
event.preventDefault()
今天只是记录这个一个方法event.preventDefault()非常简单,取消事件的默认动作场景:监听input框的delete事件,然后对input框的值进行一些操作。问题:发现对值进行操作完成之后总是会删掉一个字符,这个就是delete事件的默认操作。解决方案:使用event.preventDefault()取消事件的默认动作,完成。就是这一行小小的语句,想了3个...原创 2019-06-25 15:06:34 · 7395 阅读 · 0 评论