
JavaScript
@~~涛
这个作者很懒,什么都没留下…
展开
-
原型、原型链、作用域、作用域链、闭包
原型、原型链、作用域、作用域链、闭包原创 2022-10-18 23:13:02 · 305 阅读 · 0 评论 -
箭头函数和普通函数的区别
箭头函数和普通函数的区别原创 2022-10-18 22:10:10 · 223 阅读 · 1 评论 -
js数据类型的判断
js数据类型的判断原创 2022-10-18 08:44:49 · 165 阅读 · 0 评论 -
js实现深拷贝
js实现深拷贝原创 2022-10-17 08:24:40 · 135 阅读 · 0 评论 -
js数组去重
js数组去重原创 2022-10-17 08:07:22 · 123 阅读 · 0 评论 -
js枚举方法
js枚举方法原创 2022-10-16 22:58:34 · 411 阅读 · 0 评论 -
for in 与 for of的区别
for in 与for of的区别原创 2022-10-16 22:53:15 · 155 阅读 · 0 评论 -
js中查找方法有哪些
js查找方法原创 2022-10-16 22:48:29 · 799 阅读 · 0 评论 -
十大经典排序算法
十大经典算法原创 2022-10-16 22:38:49 · 236 阅读 · 0 评论 -
js数字截取小数点后n位数取精度的方法
const numberWithPercision = (num, percision = 0) => { const ratio = Math.pow(10, percision); if (num >= 0) { return (Math.round(num * ratio) / ratio).toFixed(percision); } return (-(Math.round(-num * ratio) /ratio).toFixed(per原创 2021-12-09 19:12:12 · 630 阅读 · 0 评论 -
js将超过一千的金额使用逗号隔开(正则,replace())
const money = '999888777.99';const temp = money.split('.');temp[0].replace(/(\d)(?=(\d{3})+$)/g,'$1,') + '.' + (temp[1] || '00');//输出 999,888,777.99//需要小数,在后面replace方法的详细解析原创 2021-12-09 18:00:38 · 1012 阅读 · 0 评论 -
一些常用的正则表达式
校验数字的表达式:n位的数字:^\d{n}$至少n位的数字:^\d{n,}$m-n位的数字:^\d{m,n}$校验字符的表达式:英文和数字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$校验证件的表达式:身份证号(15位、18位数字),最后一位是校验位,可能为数字或字符X:(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)军官证、台胞证、护照、其他(这几个长度都是8位):^\S+$特殊需求表达式:手机号码:^(13[0-转载 2021-12-06 18:41:35 · 280 阅读 · 0 评论 -
解决滚动穿透问题
1、在vue中,在标签中添加下面代码@touchmove.native.stop.prevent2、在原生h5中,可以通过弹窗的显示,来控制body的溢出是否隐藏//弹窗显示,body内容溢出隐藏overflow:hidden;//弹窗关闭,body隐藏显示滚动条overflow:auto;...原创 2021-11-25 22:36:33 · 356 阅读 · 0 评论 -
判断是移动端还是PC端
_isMobile() { let flag = navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i) if(flag){ alert('移动端') }else{ al.原创 2021-05-11 15:01:26 · 118 阅读 · 0 评论 -
原生js复制内容
function copyUrl(url) { let oInput = document.createElement('input'); oInput.value = url; document.body.appendChild(oInput); oInput.select(); // 选择对象 document.execCommand("Copy"); // 执行浏览器复制命令 oInput.className = 'oInput'; oInput原创 2021-01-18 17:18:07 · 101 阅读 · 0 评论 -
jquery分页
function customPager($, window, document, undefined) { "use strict"; var defaults = { pageIndex: 0, pageSize: 6, itemCount: 50, maxButtonCount: 7, prevText: "上一页", nextText: "下一页", buildPageUr原创 2021-01-18 18:06:33 · 102 阅读 · 0 评论 -
下载文件
//在当前页面打开下载文件的接口,便弹出一个下载文件弹窗(后端返回文件) let url = apiUrl+ `?code=${res.data.data}`; window.open(url, "_self");原创 2020-12-11 17:14:41 · 129 阅读 · 0 评论 -
原生js实现拖拽效果案例
主要事件:1、onmousedown:鼠标按下事件2、onmousemove:鼠标移动事件3、onmouseup:鼠标按键被松开事件三个事件分别绑定的对象:(1)onmousedown:绑定到要被拖拽元素上(2)onmousemove:绑定到document上,主要是为了防止鼠标移动过快,移出要拖拽的元素(3)onmouseup:绑定到document上,主要是为了防止鼠标移动过快,移出要被拖拽的元素,导致无法触发鼠标按键被松开事件基本思路:拖拽状态 = false鼠标在原创 2020-11-27 17:35:36 · 535 阅读 · 0 评论 -
原生html/css+js写轮播
html:<!DOCTYPE html><html lang="en"><head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width,initial-scale=1.0" /> <原创 2020-10-22 13:39:54 · 403 阅读 · 1 评论 -
推荐几个算法练习网站
1、牛客网2、Leetcode(力扣)3、PKU JudgeOnline(北京大学在线评测系统)原创 2020-10-21 15:02:46 · 3971 阅读 · 0 评论 -
js中页面加载完成后执行的方法
等到整个window加载完成才执行的方法window.onload = function(){ alert("页面加载完成!!!");}场景:比如开发浏览器插件时,打开需要注入内容的网站,网站还没加载完成,此时,你注入js去获取dom节点,可能出现获取不到,类似这种情况就需要使用到window.onload这个方法了...原创 2020-09-27 17:01:04 · 1109 阅读 · 0 评论 -
onhashchange 事件(监控地址栏的url变化,当然,url存在锚部分)
onhashchange 事件在当前 URL 的锚部分(以 ‘#’ 号为开始) 发生改变时触发 。http://www.example.com/test.htm#part2 - 这个 URL 中的锚部分为 #part2。HTMl中:<element onhashchange="方法名">JavaScript 中:(object是个具体的对象,例如:window/document.body)object.onhashchange=function(){console.log("锚部分发原创 2020-09-27 16:40:14 · 743 阅读 · 0 评论 -
JS循环方法
1、While 循环 - 只要条件为 true,循环能够一直执行代码块。//语法while (条件) { 要执行的代码块}//例子(一遍又一遍执行,只要变量(i)小于 10):while (i < 10) { text += "数字是 " + i; i++;}2、Do/While 循环 -do/while 循环是 while 循环的变体。在检查条件是否为真之前,这种循环会执行一次代码块,然后只要条件为真就会重复循环。//语法do { 要执行的代码块原创 2020-09-27 10:43:06 · 349 阅读 · 0 评论 -
正则匹配URL地址
匹配没有特殊要求的url/^(http|ftp|https):\/\/([\w\-]+(\.[\w\-]+)*\/)*[\w\-]+(\.[\w\-]+)*\/?(\?([\w\-\.,@?^=%&:\/~\+#]*)+)?^/匹配 https:/******.jd.com/^https:\/\/([\w]([\w\-]{0,61}[\w])?\.)+jd\.com/匹配 https://mall.jd.com/index-******.html/^https:\/\/mall\.jd原创 2020-07-20 11:42:10 · 1879 阅读 · 0 评论 -
vue路由query传递一个对象,第一次可以获取得到,刷新后就获取不到了
https://segmentfault.com/q/1010000010256764原创 2020-07-07 16:28:58 · 1480 阅读 · 0 评论 -
自写一个tabs标签页,点击tab时,下划线动画过渡
elementUI的el-tabs标签页组件,鼠标移到label上可显示icon按钮图标,但是点击icon时也同时选中了tab,还有下滑线也会因为加了icon而变长,所以需要自写一个tabs标签页解决这两个问题效果图:完整代码:<template> <div class="container"> <div class="tabs-group"> <ul> <li v-for="(item,i) in ta原创 2020-07-07 11:41:44 · 2434 阅读 · 0 评论 -
鼠标移入到按钮,动画显示下拉菜单,移出按钮,动画收起下拉菜单
效果图:完整代码:<template> <div class="container"> <div class="btn-group"> <div class="more-btn" @mouseleave="mouseleave()" @mouseenter="mouseenter()"> <el-button onfocus="this.blur()">操作</el-button>原创 2020-07-07 11:03:46 · 1192 阅读 · 0 评论 -
如何解决鼠标移动到子元素 会触发父元素的mouseout事件
用mouseleave/mouseenter代替mouseover/mouseoutmouseover与mouseentermouseover => 不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件。mouseenter => 只有在鼠标指针从元素外穿入被选元素(到元素内)时,才会触发 mouseenter 事件。mouseout与mouseleavemouseout => 不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件。mou原创 2020-07-07 10:16:18 · 1845 阅读 · 1 评论 -
js中字符串和数组之间相互转换
1、将数组转化成字符串let a = ['a','b','c']let b = a.json(",")console.log(b) //"a,b,c"2、将字符串转化成数组let a = 'a,b,c'let b = a.split(",")console.log(b) //['a','b','c']原创 2020-05-27 14:27:05 · 358 阅读 · 0 评论 -
Window 对象的 Location 属性
详细请浏览w3schoo例子:url=“https://local.yushutec.com:18443/jdb3/#/trend/competitiveTrend?type=2&id=158442”1、location.href (设置或获取整个 URL 为字符串)location.href// "https://local.yushutec.com:18443/jdb3/#/trend/competitiveTrend?type=2&id=158442"2、locatio.原创 2020-05-25 18:33:49 · 280 阅读 · 0 评论 -
阻止文本域的回车事件
注意:是 @keydown.native 而不是 @keyup.enter.native,事件中的$event不能改<el-input type="textarea" v-model="form.keyword" @keydown.native="prevent($event)"></el-input> methods: { prev...原创 2020-04-29 10:25:39 · 671 阅读 · 0 评论 -
vue锚点导航
在点击事件中加上这行代码,修改对应的id名即可document.getElementById("idName").scrollIntoView();原创 2020-04-23 19:40:46 · 1109 阅读 · 0 评论 -
js编码解码
https://www.cnblogs.com/Tracy-zdy/p/3822080.html原创 2020-04-21 23:45:21 · 667 阅读 · 0 评论 -
JS让页面滚动到最顶部
document.scrollingElement.scrollTop = 0;//让页面滚动到最顶部原创 2020-04-07 13:44:40 · 4277 阅读 · 0 评论 -
正则验证手机号
let phone = ''//手机号if(!(/^1[3456789]\d{9}$/.test(phone))) console.log("手机号输入有误")原创 2020-03-04 11:49:06 · 604 阅读 · 0 评论 -
cookies,sessionStorage 和 localStorage 的区别?
cookie,sessionStorage和localStorage是网站为了标示用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。1、数据传递:cookie会在浏览器和服务器间来回传递数据。sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。2、存储大小:cookie数据大小不能超过4k。sessionStora...原创 2019-12-09 23:26:17 · 117 阅读 · 0 评论 -
js判断数组中是否存在某一数值的5种方法
1.indexOf() -> ES5const array = ['a', 'b', 'c']array.indexOf('a') // 存在=>返回下标 array.indexOf('a') // -1不存在2.find() -> ES6const array = ['a', 'b', 'c']array.find(obj => ob...原创 2020-02-11 09:44:25 · 2830 阅读 · 0 评论