JavaScript
那就随缘吧skr
快乐的牛马
展开
-
JS 数字四舍五入保留两位小数
【代码】JS 数字四舍五入保留两位小数。原创 2022-09-02 16:30:53 · 179 阅读 · 0 评论 -
Vue项目中Ts的使用
组件 在TypeScript中,@标记的称为装饰器。 @Component装饰器,可以将我们创建的TypeScript类标记为Vue组件 在使用TypeScript开发时,组件的内部变量不再需要使用方法去声明,只需要直接声明类变量即可: <template> <div> {{ info }} </div> </template> <script lang="ts"> import { Component, Vue } fr原创 2021-05-20 11:31:10 · 1508 阅读 · 0 评论 -
JS哪些操作会造成内存泄露
意外的全局变量引起的内存泄露 function leak(){ leak="xxx";//leak成为一个全局变量,不会被回收 } 闭包引起的内存泄露 没有清理的DOM元素引用 被遗忘的定时器或者回调 子元素存在引起的内存泄露 ...原创 2021-01-19 11:14:59 · 222 阅读 · 0 评论 -
hash和history的原理和区别
hash 众所周知,vue-router有两种模式,hash模式和history模式,这里来谈谈两者的区别。 hash模式背后的原理是onhashchange事件,可以在window对象上监听这个事件 window.onhashchange = function(event){ console.log(event.oldURL, event.newURL); let hash = location.hash.slice(1); document.body.style.原创 2021-01-18 20:40:59 · 1332 阅读 · 0 评论 -
手写new的实现原理
// 手写new的实现原理 const argText = function () { let obj = {};//创建对象 var args = [].shift.call(arguments); //转换数组 // console.log(args); obj.__proto__ = args.prototype;//指向构造函数 args.apply(obj..原创 2021-01-18 19:57:39 · 380 阅读 · 0 评论 -
JS这次彻底搞懂防抖与节流
防抖(debounce) 防抖 — 指触发事件后,就是把触发非常频繁的事件合并成一次去执行。 即在指定时间内只执行一次回调函数,如果在指定的时间内又触发了该事件,则回调函数的执行时间会基于此刻重新开始计算。 举着例子: 乘车刷卡的情景,只要乘客不断地在刷卡,司机师傅就不能开车,乘客刷卡完毕之后,司机会等待几分钟,确定乘客坐稳再开车。如果司机在最后等待的时间内又有新的乘客上车,那么司机等乘客刷卡完毕之后,还要再等待一会,等待所有乘客坐稳再开车。 代码实现: //利用闭包的形式来保存定时器, <butt原创 2021-01-18 19:52:56 · 148 阅读 · 0 评论 -
JS面向对象编程的理解
JS面向对象主要基于function来实现的,通过function来模拟类,通过prototype来实现类方法的共享,跟其他语言有着本质的不同,自从有了ES6后,把面向对象类的实现更像后端语言的实现了,通过class来定义类,通过extends来继承父类,其实ES6类的实现本质上是一个语法糖,不过对于开发简单了好多。废话不多说上个简单的ES6类的面向对象编程 <div id="wrapper"> <ul class="nav"> <li原创 2021-01-15 19:40:01 · 195 阅读 · 0 评论 -
JS同步,异步,事件循环
单线程 我们常说“JavaScript是单线程的”。 所谓单线程,是指在JS引擎中负责解释和执行JavaScript代码的线程只有一个。不妨叫它主线程。 但是实际上还存在其他的线程。例如:处理AJAX请求的线程、处理DOM事件的线程、定时器线程、读写文件的线程(例如在Node.js中)等等。这些线程可能存在于JS引擎之内,也可能存在于JS引擎之外,在此我们不做区分。不妨叫它们工作线程。 同步 var a = 1; console.log(a)//第一执行的是这个 function work(){原创 2021-01-15 19:10:28 · 165 阅读 · 1 评论 -
Javascript常用的十大设计模式详解
转载自:https://juejin.im/entry/58c280b1da2f600d8725b887 一:理解工厂模式 工厂模式类似于现实生活中的工厂可以产生大量相似的商品,去做同样的事情,实现同样的效果;这时候需要使用工厂模式。 简单的工厂模式可以理解为解决多个相似的问题;这也是她的优点;比如如下代码: function CreatePerson(name,age,sex) { var obj = new Object();转载 2021-01-14 09:31:23 · 524 阅读 · 0 评论 -
JS数组ES3-ES6常用方法
它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键。但是和map不同的是, filter把传入的函数依次作用于每个元素,然后根据返回值是 true 还是false决定保留还是丢弃该元素。flat() 方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回。filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。它类似于数组,但是成员的值都是唯一的,没有重复的值。原创 2020-12-23 21:21:47 · 529 阅读 · 2 评论