
JavaScript
S筱潇S四维Smile
代码搬运工~前端engineer
展开
-
富文本中去掉 HTML 和 CSS 样式,只保留纯文本
要从富文本中去掉 HTML 和 CSS 样式,只保留纯文本,可以使用以下几种方法:1. 纯 JavaScript 方法你可以使用 JavaScript 的innerText或来提取文本,而忽略 HTML 标签和样式。原创 2024-09-11 10:49:17 · 941 阅读 · 0 评论 -
JS判断数组是否是按升序、降序排序
判断一个 JavaScript 数组是否按升序排序,可以检查数组中相邻元素的值是否满足升序的条件。判断一个 JavaScript 数组是否按降序排序,可以检查数组中相邻元素的值是否满足降序的条件。,表示数组不是按升序排序的。如果整个数组都满足升序条件,函数会返回。,表示数组不是按降序排序的。这个函数会遍历数组中的每个元素,从索引 1 开始。这个函数会遍历数组中的每个元素,从索引 1 开始。如果找到任何一个不满足升序条件的相邻元素,函数就会返回。如果找到任何一个不满足降序条件的相邻元素,函数就会返回。原创 2023-06-02 15:09:58 · 1382 阅读 · 0 评论 -
微信H5页面禁止分享朋友和复制链接
微信H5页面禁止分享朋友和复制链接原创 2022-08-05 18:23:13 · 2419 阅读 · 0 评论 -
UglifyJS前端打包压缩工具
UglifyJS前端打包压缩工具原创 2022-07-26 16:44:23 · 596 阅读 · 0 评论 -
JavaScript获取两个日期之间的所有日期组合
JavaScript获取两个日期之间的所有日期组合原创 2022-07-07 12:02:38 · 1563 阅读 · 0 评论 -
JS获取图片或base64的宽高等基本信息
JS获取图片或base64的宽高等基本信息原创 2022-06-20 16:10:21 · 899 阅读 · 0 评论 -
VUE监听页面滚动到底部方法
methods: { scrollBottom() { let scrollTop = document.documentElement.scrollTop || document.body.scrollTop; let clientHeight = document.documentElement.clientHeight; let scrollHeight = document.documentElement.scrollHeight; i.原创 2022-04-29 12:10:41 · 3905 阅读 · 0 评论 -
el-cascader级联选择器清空初始化方法
<el-cascader class="w500" ref="cascader" :options="options" :props="props" @change="cascaderChanged"></el-cascader>this.$refs.cascader.$refs.panel.checkedValue = []; // 清空选中值this.$refs.casc..原创 2022-04-28 17:31:38 · 2185 阅读 · 1 评论 -
js保存网络图片至本地
downImg(imgsrc) { var image = new Image() // 解决跨域 Canvas 污染问题 image.setAttribute('crossOrigin', 'anonymous') image.onload = function() { var canvas = document.createElemen.原创 2022-04-26 16:53:03 · 810 阅读 · 0 评论 -
js递归树结构计算每个节点的叶子节点的数量并且输出
var json = { "text" : "表格列名称", "children" : [{ "text" : "序号", "children" : [{ "text" : "序号一", "children" : [] },{ ...原创 2022-04-22 18:24:23 · 2129 阅读 · 0 评论 -
iView UI常用组件DatePicker清空技巧
清空DatePicker(日期选择器)的方法:this.$refs.element.handleClear()清空TimePicker(时间选择器)的方法: this.$refs.element.handleClear()清空Select组件的方法:this.$refs.element.clearSingleSelect()清空Table组件的方法: this.$refs.element.selectAll(flase)清空input组件的方法:直接让绑定的变量等..原创 2022-04-15 20:44:54 · 2195 阅读 · 0 评论 -
JavaScript距离当前日期倒计时的方法(Vue项目)
项目中,会遇到有过期时间的倒计时,使用方法如下:export default { data() { return { day: 0, //天 hour: 0, //时 minute: 0,//分 second: 0,//秒 timer: null, expireat: '2022-05-01',//过期时间 }; }, me原创 2022-04-15 20:30:55 · 909 阅读 · 0 评论 -
JavaScript获取当前月的第一天和最后一天日期
getFirstDay(){ //当前月第一天 var y = new Date().getFullYear(); //获取年份 var m = new Date().getMonth() + 1; //获取月份 var d = '01'; m = m < 10 ? '0' + m : m; //月份补 0 return [y,m,d].join("-") },getLastDay(){ //当前月最后一天 var y = new Date().getFull.原创 2022-04-15 20:05:33 · 4768 阅读 · 0 评论 -
JavaScript获取一周前,一个月前日期
原创 2022-04-15 19:59:30 · 866 阅读 · 4 评论 -
iView UI 使用page分页添加跳转按钮-输入页码后点击跳转
使用电梯,快速跳转到某一页在iview里,分页组件的电梯功能输入页码后需要按回车才能跳转这让不知道需要按回车的人摸不着头脑呀,所以呢,动动手写个跳转按钮~<div class="overflow-h mt10"> <span class="fr mt5 ml10"> <Button class="btn-page mr10" type="primary" size="small" @click="goElevat原创 2022-04-08 15:52:40 · 733 阅读 · 1 评论 -
js将一维数组分割成每三个一组的算法
var arr = [];for(var i=0;i<result.length;i+=3){ arr.push(result.slice(i,i+3));}原创 2021-08-12 18:36:39 · 556 阅读 · 1 评论 -
input 限制只能输入数字,且保留小数后两位
<input @keyup="value=oninput(value)" @change="value=oninput(value)"/>js方法oninput(num) { console.log(num) var str = num var len1 = str.substr(0, 1) var len2 = str.substr(1, 1) var lenLa.原创 2021-02-22 14:58:03 · 1522 阅读 · 0 评论 -
js获取当天0点和24点的时间戳
let startTime1 = new Date(new Date(new Date().toLocaleDateString()).getTime()); // 当天0点let endTime1 = new Date(new Date(new Date().toLocaleDateString()).getTime() +24 * 60 * 60 * 1000 -1);// 当天23:59原创 2021-02-02 13:30:32 · 2083 阅读 · 0 评论 -
JS 正则去除所有空格
function removeAllSpace(str) { return str.replace(/\s+/g, "");}原创 2021-01-06 10:26:48 · 779 阅读 · 0 评论 -
js方法点击复制文本
copy(data) { //复制文本 let url = data; let oInput = document.createElement('input'); oInput.value = url; document.body.appendChild(oInput); oInput.select(); // 选择对象; console.log(oInput.value) document.execCommand("Copy"); /...原创 2020-12-28 16:57:09 · 119 阅读 · 0 评论 -
JS中浅拷贝和深拷贝的使用,深拷贝实现方法总结
1、浅拷贝:两个对象经过拷贝后虽然具有相同的属性,但是他们都指向同一个内存空间。操作会引起引用,同一地址的变量一起改变。let a = {x: 1}let b = ab.x = 2console.log(b) // {x: 2}console.log(a) // {x: 2}2、深拷贝:两个对象除了拷贝了一样的属性, 没有任何其他关联(指向不同的内存空间)。实现深拷...原创 2019-09-03 11:47:42 · 280 阅读 · 0 评论 -
Warning: Each record in table should have a unique `key` prop,or set `rowKey` to 解决方法
在vue项目中,使用vue.ant.design中的Table组件会出现一下报错:列表中的每个记录应该有唯一的“key”支持,或者将“rowKey”设置为唯一的主键。方法一:对数据进行处理,加入key的键值对data.forEach((item, index) => { item.key = index + 1; })方法二:设置rowKey<a-t...原创 2019-07-11 23:32:24 · 4230 阅读 · 0 评论 -
[Vue warn]: Duplicate keys detected: '0'. This may cause an update error. found in解决办法
在vue项目中出现以下报错:错误原因:一个template中有两个一样的v-for, key属性冲突导致解决方法:在第二个v-for中, key属性设置一下即可::key="index+1"如下图所示:...原创 2019-05-17 17:31:50 · 29515 阅读 · 3 评论 -
node.js 报错Error: ENFILE: file table overflow...ENFILE: file table overflow, open...
在MAC上启动nodejs,遇到了一个问题:主要大概是说文件打开太多了,超过了限制。产生这个问题主要是苹果操作系统的限制,具体参考这个ISSUEI'm glad this is solving it for everyone. Unfortunately, Apple sets ridiculously low limits by default which might be g...原创 2019-03-20 16:47:37 · 7286 阅读 · 3 评论 -
vue 引入自定义js方法并调用
自定义common.js公共方法//第一种方法:export 导出函数export function getWinGoods(that,header, params) { return new Promise(function(resolve, reject) { let obj={} let objH={} if(params) { //添加自定义参数 for(let...原创 2019-01-23 10:12:49 · 33649 阅读 · 0 评论 -
vue draggable 火狐拖拽搜索bug解决
created() { document.body.ondrop = function (event) { event.preventDefault(); event.stopPropagation(); } },原创 2020-12-29 09:44:06 · 592 阅读 · 0 评论 -
js 使用replace替换、全部替换、替换动态数据方法
1、替换:let s = 'a,b,c,d';s = s.replace(',','-');//输出: 'a-b,c,d'replace默认替换的是第一个。2、全部替换let s = 'a,b,c,d' s = s.replace(/\a/g,"-");//输出: 'a-b-c-d'/和/g中间的部分是需要替换的,而且不带双引号。3、动态替换数据let d = 'sdasd'; //动态替换的字符串let n = 'ssdfa'; //新字段let r原创 2020-12-28 20:03:05 · 5645 阅读 · 0 评论 -
js获取可视区域高度
document.body.clientWidth ==> BODY对象宽度document.body.clientHeight ==> BODY对象高度document.documentElement.clientWidth ==> 可见区域宽度document.documentElement.clientHeight ==> 可见区域高度网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHe.原创 2020-10-14 16:46:04 · 7839 阅读 · 0 评论 -
JS递归树结构,修改树结构的属性值key和value
mapTree (org) { const haveChildren = Array.isArray(org.children) && org.children.length > 0; return { //分别将我们查询出来的值做出改变他的key title: org.groupName, label: org.groupName, value: org.id, data: {...org},.原创 2020-08-26 17:00:38 · 6250 阅读 · 1 评论 -
JS 获取当前周从星期一到星期天的日期方法
function getWeekDay(dateString) { let dateStringReg = /^\d{4}[/-]\d{1,2}[/-]\d{1,2}$/; if (dateString.match(dateStringReg)) { let presentDate = new Date(dateString), toda...原创 2019-09-05 16:53:46 · 5949 阅读 · 1 评论 -
JS删除两个数组中相同的某个对象值
var arr1=[{id:1},{id:2},{id:3},{id:4},{id:5}]var arr2=[{id:1},{id:2},{id:3}]var set=arr2.map(item=>item.id)console.log(set)var resArr=arr1.filter(item=>!set.includes(item.id))console.log(resArr)原创 2020-05-27 11:51:18 · 1210 阅读 · 0 评论 -
js过滤时间方法,几分钟前,1小时前
fifterTime(date){ let date1=date.replace(/-/g,"/"); let now = new Date().getTime(); let t = new Date(date1).getTime(); let temp=parseInt((now-t)/1000); if(temp<60){ retur...原创 2020-05-06 21:50:03 · 636 阅读 · 0 评论 -
JS删除两个数组有相同元素或者相同属性
JS删除两个数组有相同元素或者相同属性:var newArray=array1.filter(function(item) { return array2.indexOf(item) == -1}); JS删除两个数组有不同元素或者不相同属性:var newArray=array1.filter(function(item) { retu...原创 2020-03-25 17:52:12 · 7246 阅读 · 0 评论 -
wangEditor关闭粘贴样式的过滤,解决小程序中xml溢出报错问题
从别的网页上复制文本,粘贴到wangEditor富文本编辑器中,因为wangEditor自带粘贴样式过滤,粘贴过来的样式会被编辑器过滤掉,文章中有很多xml的标签,小程序解析时就会出现报错。解决办法:在编辑器中加上参数pasteFilterStyle:var E = window.wangEditorvar editor = new E('#div1')// 关闭粘贴样式的过滤...原创 2020-03-20 11:48:25 · 2007 阅读 · 0 评论 -
input 禁止输入特殊字符
转自:https://blog.youkuaiyun.com/u010982856/article/details/52297232有些特殊字符传入到后台是会产生错误的 有可能会sql注入,所以从根本上拦截研究了一下有几种方式:方式一:拿到value值以后 在你传递之前处理 function stripscript(value) { var pattern = new RegEx...原创 2020-03-11 22:54:25 · 1471 阅读 · 0 评论 -
Vue自定义指令—— 完美解决H5页面不同尺寸屏幕的适配问题
H5适配一直是一个头疼的问题,基于vue框架针对H5在不同分辨率的手机做出来一套适配方案,具体如下:设计图按iPhone6/7/8 去掉底部返回条的尺寸设计的: width:750px , height:1108px(可使用该方法应对其他设计图尺寸)一、以设计图的尺寸为标注的做一套适配方案,就是出完美高度比:function getResheightAndWidth() { ...原创 2020-01-17 16:09:15 · 2140 阅读 · 0 评论 -
vue中进入详情页记住列表滚动位置keep-alive解决
一、配置路由 keepactice:true { path: '/index', name: 'index', component: index, meta: { keepalive: true // 组件是否需要被保存 } }二、在App.vue页面当中,将需要保存的组件通过路由标签r...原创 2020-01-07 15:45:10 · 833 阅读 · 0 评论 -
JS根据分数,计算名次(分数相同名次相同)
1、首先先按分数从高到低排序,排序方法参照以下:https://blog.youkuaiyun.com/qq_29483485/article/details/85003814以下是按降序排列好的学生列表:studentList:[{ name:'张三', store:99, ranking:1,},{ name:'李四', store:98, ...原创 2019-12-19 12:10:19 · 5682 阅读 · 5 评论 -
解决H5的a标签的download属性下载service上的文件/图片出现跨域问题
1.通过点击下载多媒体文件(图片/视频/文件等)最简单的方式:<a href='url' download="filename.ext">下载文件</a>如果url指向同源资源,是正常的。如果url指向第三方资源,download会失效,表现和不使用download时一致——浏览器能打开的文件,浏览器会直接打开,不能打开的文件,会直接下载。浏览器打开的文件...原创 2019-11-12 14:08:51 · 3638 阅读 · 0 评论 -
JavaScript 按对象的属性排序方法(升序和降序)
1、一般我们给一维数组排序,直接用arr.sort()方法就可以了:// 升序arr.sort(function (a, b) { return a - b;}); // 降序arr.sort(function (a, b) { return b - a;});示例:let arr = [2,23,1,6,4,78]let b = a.sort(f...原创 2018-12-14 15:09:31 · 3431 阅读 · 1 评论