JavaScript
不要讲废话
这一路,你可以哭但是不能停
展开
-
JavaScript之防抖、节流设计实现
关于防抖和节流:在频繁的事件回调中做复杂计算,很有可能造成页面卡顿,此时可以将多次计算合并为一次计算,只在一个精确点做操作。防抖和节流都是防止函数多次调用 区别在于:防抖会在每次触发后重新计时,直到到达指定时间间隔节流是相隔指定时间再执行防抖:其实防抖的原理很简单,看完下面这个生活应用场景就已经非常清晰了生活中最常见的就是电梯,关门机制:当有人进入电梯就重新计时等待指定的间隔时间。防抖就是只要有事件进来就重新计时,如果一直触发这个事件并且间隔小于指定时间间隔,就一直不能执行,只有这次事件进原创 2021-04-29 17:02:24 · 132 阅读 · 0 评论 -
JavaScript之new、instanceof的模拟实现
1. new关键字的实现创建一个空对象,作为将要返回的对象实例将这个空对象的原型,指向构造函数的prototype属性将这个空对象赋值给函数内部的this关键字开始执行构造函数内部的代码执行结果如果是引用类型就返回执行结果 否则返回对象function _new(FC, ...args) { if (typeof FC !== "function" || !FC.prototype) throw Error("error") var obj = Object.create(原创 2021-04-27 22:45:34 · 105 阅读 · 0 评论 -
JavaScript之call、apply、bind的模拟实现
1. call的实现call()方法调用一个函数,其具有一个指定的this值和分别地提供的参数(参数的列表)。call的性能要高于apply。call()方法作用和apply()方法类似,只有一个区别,就是call()方法接受的是若干个参数的列表,而apply()方法接受的是一个包含多个参数的数组。语法:function.call(thisArg, arg1, arg2, ...) // 思路:判断this是否传递,参数是否存在,删除创建的函数 // 原理:把当前原创 2021-04-27 22:36:19 · 80 阅读 · 0 评论 -
javascript数组方法及其重构
Array方法及其重构创建数组:直接创建:var arr = [ 1,2,3 ]创建数组对象:var arr = new Array(size)var arr = new Array(1,2,3)根据对象创建数组: var arr = new Object([])清空数组:arr.length = 0使用in运算符可以判断数组元素是否为空var arr = [1,2,3,,4];3 in arr // false 0 in arr // true // 数字3和0 表示原创 2021-03-25 22:15:36 · 454 阅读 · 0 评论 -
vue+node项目中使用token进行登录验证拦截
在vue+node项目中使用token进行登录验证拦截:一、用户登录发送登录请求到后台二、后台接收用户发送的登录请求,进行验证用户登录。验证成功后生成token并响应给前台。三、前台接收到后台的token信息和用户其他信息,将token信息存储到localstorage。四、前台拦截请求,将token信息添加到请求头中。五、后台拦截前台的每次请求,进行验证token信息是否存在和正确。并且响应信息给前台。六、前台根据后台的响应确定token是否正确,进行进一步操作(不正确,跳转至登录页面)。原创 2021-03-21 17:37:07 · 1468 阅读 · 0 评论 -
JS——数据类型和类型转换
1.数据类型和类型转换- 数值(number):整数和小数- 字符串(string):文本- 布尔值(boolean):表示真伪的两个特殊值,true和false- undefined:表示“未定义”或不存在,没有任何值- null:表示空值,值为空- 对象(object):各种值组成的集合- Symbol:ES6新增,表示独一无二的值,最大的用法是用来定义对象的唯一属性名。原型数据类型和引用数据类型两大类。类型转换##转Boolean:在条件判断时,除了undefined,nu原创 2021-03-17 08:22:07 · 567 阅读 · 0 评论