![](https://img-blog.csdnimg.cn/2019091813595558.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Js
Js
天渺工作室
全栈工程师+设计师+业余音乐制作人
展开
-
js计算一个矩形内部,有一个等比缩放的矩形,如何判断宽和高那个先溢出外层的矩形
一个任意矩形内部,有一个任意等比缩放的矩形,如何判断宽和高那个先溢出外层的矩形?宽和高那个先贴到边上?可以根据两个矩形的比例关系来判断宽和高那个先溢出。首先计算出两个矩形的宽高比,然后比较它们的大小关系。若外层矩形的宽高比大于内层矩形的宽高比,则内层矩形先溢出的是宽;反之,先溢出的是高。最近在做js canvas绘图需求时,遇到一个矩形图形重叠逻辑判断问题。原创 2023-05-13 20:14:36 · 224 阅读 · 1 评论 -
js在循环中使用正则失效异常的坑
js中在循环中使用正则表达式遇到的小坑原因:/111/g 这种写法看起来像string,但终究还是正则,正则属于引用型数据类型。引用型数据类型 传统意义中 需要我们"才能使其 内存指向独立出来,而不是让内存指向一直指向初始定义时的源头。ECMAScript包括两个不同类型的值:基本数据类型和引用数据类型。so正则表达式属于引用数据类型。打印还存在false。原创 2023-04-29 23:06:21 · 1223 阅读 · 0 评论 -
js用前缀名查找class或id节点,js模糊查询某个dom节点
js用前缀名查找class或id节点,js模糊查询某个dom节点原创 2023-04-05 23:20:13 · 681 阅读 · 0 评论 -
js中null和undefined的区别
js中null和undefined的区别?这也是一个常见的js面试题。原创 2023-03-18 15:13:28 · 586 阅读 · 0 评论 -
Vue3中用自定义指令拦截点击事件,点击事件添加权限
Vue3中用自定义指令拦截点击事件,点击事件添加权限。某些应用场景会给点击事件添加权限,不存在权限就 拦截 点击事件(或触发其他业务事件),有权限就继续正常 触发 点击事件。如果用封装组件的方法,在使用三方UI库的情况下,封装成本过大,并不划算。原创 2023-02-12 23:08:39 · 1435 阅读 · 1 评论 -
event.path参数被浏览器删除,如何一劳永逸的解决
event.path参数被浏览器删除,如何一劳永逸的解决.event.path参最早从官方issue中可获知chromium内核团队早在21年就开始认为 Event.path 属于非标准 API,某些地方已经开始删除event.path数组参数了。2月初,Chrome(版本号109.0.5414.120)在一次升级中删除绑定点击等等部分事件中的Event.path数组参数,,将当前所有的冒泡一层一层 parentNode 元素收集起来。方法,但是根据网上的某些网友反馈也有可能返回空数组(暂未找到原因)。原创 2023-02-12 01:37:59 · 935 阅读 · 0 评论 -
js统计对象的层数
js算法统计对象的层数// 测试数据var testObj = { b: { c: { d: { e: {} } }, c: { d: { e: { d: { a: { b原创 2022-05-04 01:45:35 · 680 阅读 · 0 评论 -
js让forEach停止的方法
可以利用 try catch 的抛出异常行为来巧妙的停止forEach遍历开发中当然不能这么写 面试的时候 可以说出来 也算加分项```// 必须用 try catch 整个包住forEach 才能停止try { [1,2,3,4,5,6].forEach(function(item, index){ console.log(item); if(item === 3){ throw new Err...原创 2022-02-13 13:14:30 · 2162 阅读 · 0 评论 -
Remove untracked files, stash or commit any changes, and try again
在react 项目中暴露webpack 配置文件的时候,执行yarn run eject报错Remove untracked files, stash or commit any changes, and try again.error Command failed with exit code 1.info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.其实就是因原创 2022-02-01 02:02:59 · 1371 阅读 · 0 评论 -
JOSN.parse(JSON.stringify())实现深拷贝的缺点
首先推荐在项目中引用lodash三方工具库cloneDeep方法用来做数据深拷贝。// import { cloneDeep } from 'lodash';import cloneDeep from 'lodash/cloneDeep';// 只引用一个 推荐这样写let a = cloneDeep(1);案例数据var obj = { name: 'zhangsan', date: new Date(), regExp: new RegE原创 2022-01-23 21:55:56 · 2259 阅读 · 1 评论 -
温习js中的for,forEach,map, some, every用法总结,跳出循环方法
温习一遍原生js中的for,forEach,map, some, every用法总结,及其跳出循环的方法1.for循环 适用于任何循环应用场景https://www.runoob.com/js/js-loop-for.html(while循环体和for类似,满足条件就跳出)const arr = [1,2,3,4,5,6]; for(let i in arr) { console.log(i); // return; // 报错 Uncaught..原创 2021-06-12 01:23:46 · 756 阅读 · 0 评论 -
算法题 8个球有一个重一点,最少称几次能找出来 js算法题
8个球有一个重一点,最少称几次能找出来 算法题用一个托盘天平 来计算方法1:3次第1次 两边4个 筛选出存在重的一边4个第2次 两边 2个 筛选出存在重的一边2个第3次 两边 1个 筛选出存在重的一边1个方法2:2次第1次 两边 3个 筛选出存在重的一边3个 如果两边一样重,说明重的在没称重的剩余2个中,第2次情况1 剩余的两个在称一次分辨出重的哪一个 如果两边不一样重,说明重的在重的那3个...原创 2021-04-03 04:07:35 · 4147 阅读 · 0 评论 -
js 动态创建a href 循环下载文件只能下载10个或者固定数目的问题
在web前端项目中,很多地方的下载单张图片/文件都可以用<a href="/images/logo.png" download="文件名">来下载指定文件遇到的问题:在下载多个文件的时候 使用for 循环来触发a hrefdownload//for循环来触发a href 下载文件for(let i=0;i<=100;i++){ // 获取要下载的图片dom var img = document.getElementsByClassName('qrcode_...原创 2021-02-26 18:52:24 · 2328 阅读 · 2 评论 -
vue ERROR in [copy-webpack-plugin] unable to locate ‘/xxx/xxxx‘ at ‘/xxx/xxxx‘
vue2的 npm run build 打包时报此错误log的情况下1.检查报错路径下是否有报错所指的文件夹2.没有的话 人工添加一个就OK人工添加此文件原创 2021-02-25 17:59:55 · 592 阅读 · 0 评论 -
Vue 集成高德地图 搜索提示POI下拉框点击偶尔失效的问题
在vue2中集成高德地图后,高德地图自带的'AMap.Autocomplete','AMap.PlaceSearch', 服务模块绑定的input 输入框收入关键字以后,提示内容出来以后,鼠标点击无效的现象出现类似的情况的主要原因就是使用input的时候,默认使用html最原始的自带input 标签<!--最好使用html原生的input标签--><input id="input_id" /><!--不要使用三方UI的输入框 比如element 的.原创 2021-02-03 16:55:26 · 1876 阅读 · 1 评论 -
a href标签下载文件遇到下载失败 打开文件的问题
a href download 此方法只能用于同一个域名的文件资源下载 跨域或者三方平台的特殊资源图片(比如 微信公众号资源图片)总是会打开资源,而非下载!<a href="/images/logo.png" download="下载资源名称">当下载资源跨域的时候参考了https://blog.csdn.net/weixin_44379204/article/details/105056713方法1<a @click="downloadFile(fileUrl,.原创 2021-01-29 11:23:37 · 2753 阅读 · 0 评论 -
js 钱数 元转分 防浮点
//钱数格式化 元转分 digit转化倍数formatMoneyFenToYuan(yuan,digit=100){var m=0,s1=yuan.toString(),s2=digit.toString();try{m+=s1.split(".")[1].length}catch(e){}try{m+=s2.split(".")[1].length}catch(e){}return Number(s1.replace(".",""))*Number(s2.replace(".原创 2020-10-12 15:34:01 · 786 阅读 · 0 评论 -
Vue 项目解决跨域问题
vue 项目中解决接口跨域的方法1.简单粗暴直接用jquery 的jsonp 来调用跨域跨域接口直接npm install vue-jsonp --save 安装依赖import Vuejsonp from'vue-jsonp;//实例化一次 ...Vue.use(Vuejsonp)...this.$jsonp.then((e)=>{});//其实这个插件就是用的jquery的jsonp 和用jquery 一样的 如果项目本身引用了jq 那就用jq 的ajax的jso原创 2020-09-10 15:10:48 · 371 阅读 · 0 评论 -
vue elementUI Uncaught (in promise) cancel的报错问题
this.$confirm 源代码方法是基于new Pormise 方法来操作的 方法末尾的catch 是不能删除的,需要存在抛出错误的地方this.$prompt('请输入分类名称', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', inputPattern: /^[\s\S]*.*[^\s][\s\S]*$/, inputErrorMessage: .原创 2020-08-18 19:49:03 · 942 阅读 · 0 评论 -
vue Uncaught Error: Redirected when going from “/*“ to “/*“ 路由报错
Uncaught Error: Redirected when going from "/*" to "/*"报类似的错 大部分因为触发了vue-router 路由导航重定向了简单的方法就是直接触发跳转的逻辑上,把error抛出来 this.$router.replace({ path: this.$route.path, query }) .catch(()=>{});//把error 抛出来扩展参考https://blog.c...原创 2020-08-05 14:03:40 · 9165 阅读 · 0 评论 -
vue工程添加echarts图表案例demo
1.安装echartsnpm install echarts --save2.可以在项目入口一如全局 也可以在局部页面引入 1.在单独页面引入import echarts from 'echarts' 2. 也可以在main.js 引入全局import echarts from 'echarts'//放入全局vue 对象中Vue.prototype.$echarts = echarts3.div容器<div id="main" styl...原创 2020-08-02 20:46:56 · 313 阅读 · 0 评论 -
js 判断当前浏览器类型 判断当前是否是微信内嵌浏览器(是否是APP内嵌webView)
js的浏览器navigator头信息myBrowserType(){var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串var isOpera = userAgent.indexOf("Opera") > -1;if (isOpera) {return "Opera"}; //判断是否Opera浏览器if (userAgent.indexOf("Firefox") > -1) {return "FF"原创 2020-07-26 19:22:48 · 1614 阅读 · 0 评论 -
vue h函数 render函数写法案例
renderHeader(h,{column,$index}){ return h( 'div', {class:'', style:"padding-top:4px;" }, [ h('el-tooltip', { props:{ content:"若设置结算时间,每天实际统计时间:从结算时间起24小时为一...原创 2020-06-11 11:10:57 · 2834 阅读 · 0 评论