
javascript
lxslxskxs
书山有路勤为径,学海无涯苦作舟
展开
-
promise初识
(1):promise对象 什么是promsie,promise字面就是承诺,承诺一段时间做出回应 promise产生的历史原因,回调函数的层层嵌套的回调"地狱",不够优雅和易用 promise的三种状态 pending fulfilled reject promise的特点 promise的状态不可逆,要么是成功要么是失败,当处于pending状态,未知是成功还是失败 promise的结果必须通过回调函数返回出去,不然就会处于pending未知状态 promise对象的状态不受外界影原创 2022-01-15 19:27:36 · 416 阅读 · 0 评论 -
vue实现穿梭框
页面展示 html <body> <div id="my"> <div class="container-fluid"> <div class="row"> <!--左侧--> <div class="col-xs-5 col-sm-5"> <div class="panel panel-success">原创 2022-01-12 22:42:54 · 499 阅读 · 0 评论 -
javascript-鄙人常用的功能函数
常用的功能函数 (1): 功能函数 1: 回到顶部 Vue.prototype.$scrollTo = (x = 0, y = 0, type = 'smooth') => { window.scrollTo({ top: x, left: y, behavior: type // 滚动行为:smooth平滑滚动,instant瞬间滚动,默认值auto,等同于instant }) } 2: 判断传递过来的值是否为空 //判断传过来的值是否为空 export function isN原创 2022-01-01 19:14:12 · 638 阅读 · 0 评论 -
javascript-简单理解设计模式
JS设计模式有很多种 下边我举几个学习常见的模式 (1): 单例模式(Singleton Pattern)-创建 1: 第一种 // 单例模式(Singleton Pattern),后端用的比较多 // 单例模式创建多少对象就只有一个实例 var SinglePattern = (function(){ function Single(name) { this.name = name; } return function(name) { if(!Single.ins原创 2021-12-30 21:23:46 · 250 阅读 · 0 评论 -
javascript-闭包(closure)
什么是闭包最简短的话解释 内部函数引用外部的变量 使用闭包 // function fn1() { // var a = 20; // function fn2() { // a++; // console.log("a",a); // } // fn2() // } // fn1() // 21 永远是21 // 内部函数被外部引用,内部的闭包才不会消亡,需要设置 fn =null function fn1() { var a = 20; return f原创 2021-12-26 22:35:54 · 318 阅读 · 0 评论 -
javascript-this指向问题
this指向问题 1: 普通函数调用,this指向window function a() { // 严格模式下 this为undefined console.log(this) // window } 在node.js中运行的话,this指向global全局对象 2: 谁调用指向谁 let obj = { name: '张三', age: 10, fn3() { console.log(this) } } obj.fn3() // this指向obj原创 2021-12-26 20:47:08 · 391 阅读 · 0 评论 -
javascript-作用域和预解析
作用域(规定变量和函数可使用的范围叫做作用域) 什么是作用域链(每个函数都有一个作用域链,查找变量和函数时,需要从局部作用域到全局作用域一次查找,这些作用域的集合叫做作用域链) // 第一种 var a = 1; function f() { console.log(a); } f() // 1 // 第二种 function f2() { var a2 = 3; } f2(); console.log(a2); // a2 in not defined // 第三种(记住变量提升,必须声明变原创 2021-12-11 23:24:04 · 229 阅读 · 0 评论 -
前端性能优化之防抖和节流
什么是防抖和节流 防抖: 触发高频事件后n秒后,函数只会执行依次,如果n秒内再次触发,则重新计时 节流: 高频事件触发,但是在n秒内只会执行一次,在这n秒内,无论触发多少次,只会执行一次,节流会稀释函数的执行频率 防抖的应用场景: 1 resize窗口缩放 2 输入框中不停输入 节流应用场景 1 scroll滚动事件,上拉加载 2 按钮不停点击 debounce.js function debounce(fn,delay=500) { let timer = null;原创 2021-12-03 21:24:01 · 309 阅读 · 0 评论 -
10种方式实现数组的去重
1 双层for循环 let arr = [1,1,2,3,3,4,5,6]; function uniqueArr(arr) { for(let i = 0; i < arr.length; i++ ) { for(let j = i+1; j < arr.length; j++) { if(arr[i] == arr[j]) { arr.splice(j,1); j--; } } } return arr }原创 2021-11-25 18:45:37 · 230 阅读 · 0 评论 -
javascript之数组中常用的属性和方法
数组中常用的属性 length 数组中常用的方法 concat 数组合并 (es6的扩展运算符) reverse() 数组反转 sort() 数组排序 splice() 数组截取和添加替换(两个参数代表的是删除,三个删除代表的是替换或者添加,当第二个参数为0事,表示添加)- 第二个参数代表删除的个数或者替换的个数(替换的个数大于原数组的部分长度,只取原数组的最大长度),第三个参数代表的是替换的元素 slice() 截取数组(开始索引和结束索引之间,包括开始索引不包括结束索引) pop 数组删除,返回被删除原创 2021-12-01 19:32:58 · 148 阅读 · 0 评论 -
javascript之日期常用的方法
什么是日期对象 Date对象是处理日期和时间的 日期对象是new Date()实例化对象创建的 日期的属性 constructor prototype 日期常用的方法 getDate() 返回月中的第几天(从 1 到 31)。 getDay() 返回的星期(0-6) getFullYear() 返回年份 getMonth() 返回月份(0-11) getHours() 返回小时(0-23) getMinutes() 返回分钟(0-59) getMillSeconds() 返回毫秒(0-999) ge原创 2021-12-02 17:45:05 · 263 阅读 · 0 评论 -
javascript之对象常用的方法
对象常用的方法 Object.assign() 对象合并 Object.freeze() 对象冷冻 Object.defineProperty() 对象劫持 Object.prototype.toString.call() 判断数据类型 Object.keys() 转换为键名数组 Object.values() 转换为键值数组 Object.entries() 转换为键值对的二维数组 object.hasOwnPorperty() 返回布尔值,指示对象自身属性中是否具有指定的值 isPrototypeOf原创 2021-12-02 17:39:04 · 329 阅读 · 0 评论 -
javascript之正则常用的方法
正则常用的方法 修饰符 i 执行对大小写不敏感的匹配 g 执行全局匹配(查找所有的匹配,并非是在找到第一个匹配后停止) m 执行多行匹配 常用的元字符 \w 查找单词字符 \W 查找非单词字符 \d 查找数字 \D 查找非数字 \s 查找空白字符 (包括空格、制表符、换页符) \S 查找非空白字符 \b 匹配单词边界 \B 匹配非单词边界 \n 换行符 \f 换页符 \r 回车符 \t 制表符 方括号 [0-9] 查找任何从 0 至 9 的数字 [a-z] 查找任何从小写 a 到小写 z 的字符。原创 2021-12-02 17:37:49 · 218 阅读 · 0 评论 -
javascript之数字常用的方法
number常用的方法 toString() 转换为字符串 toLocaleString 把数字转换为字符串,使用本地数字格式顺序。 valueof 返回数值的原始值 var a = 6666; a.toLocaleString(); // "6,666" a.toString(); //"6666" var dt = new Date(); console.log(dt.toLocaleString()); //2019/9/11 下午4:46:04 console.log(dt.toString(原创 2021-12-02 17:13:59 · 115 阅读 · 0 评论 -
javascript之字符串常用的属性和方法
字符串的属性 String.length 字符串常用的方法 indexOf() 返回指定字符串首次出现的位置,有返回1,没有返回-1 lastIndexOf() 未指定,返回指定字符串在尾部首次出现的位置,有返回1,没有返回-1 includes() 返回符合条件的字符串,有返回为true,没有返回false search() 方法用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。返回值是指定位置的下标,没有找到返回为-1 match() 找到一个或多个正则表达式的匹配。返回值是一个数原创 2021-12-02 17:05:24 · 227 阅读 · 0 评论 -
javascript-继承的理解
原型继承 function Father(name="李四",age=20) { this.name = name; this.age = age } Father.prototype.gender = "男" function Child() { this.name = "张三" } Child.prototype = new Father() var child = new Child() child.gender="女" child.age = 18 console.log("chil原创 2021-12-01 22:13:48 · 268 阅读 · 0 评论 -
javascript之Math常用的方法
Math常用的属性和方法 Math.abs() 返回绝对值 Math.ceil() 向上取整 Math.floor() 向下取整 Math.max() 返回最大值 Math.min() 返回最小值 Math.random() 返回随机值 Math.round() 四舍五入 Math.sprt() 返回数的平方根Math.sqrt(16); 4 Math.pow() 返回x的y次幂 Math.PI() 返回PI Math.sin() 返回正弦 Math.cos() 返回余弦 Math.acos(x) 返回反原创 2021-12-02 17:52:20 · 1510 阅读 · 0 评论