Js
文章平均质量分 61
js相关基础知识
健超还在敲代码
游戏编程毕业,主攻前端,向全栈发展。Js、Node.js、Java、Vue、React、Unity
展开
-
Js_reduce用法详解(超详细!!!)
reduce从入门到精通原创 2022-07-29 13:58:58 · 9158 阅读 · 0 评论 -
js算法_实现两个大数相加
let a = "9007199254740991";let b = "1234567899999999999";function add(a ,b){ //取两个数字的最大长度 let maxLength = Math.max(a.length, b.length); //用0去补齐长度 a = a.padStart(maxLength , 0);//"0009007199254740991" b = b.padStart(maxLength , 0);//"1234.原创 2021-06-03 10:39:06 · 990 阅读 · 0 评论 -
Js_bind( )、call( ) 的用法及实现
首先来通过以下例子来认识bind( )this.num = 9; var mymodule = { num: 81, getNum: function() { return this.num; }};module.getNum(); // 81var getNum = module.getNum;getNum(); // 9, 因为在这个例子中,"this"指向全局对象// 创建一个'this'绑定到module的函数var boundGetNum = getNum.b.原创 2021-01-29 11:40:33 · 349 阅读 · 0 评论 -
Js_执行机制-同步任务-异步任务-微任务-宏任务
一、概念理解1.关于javascriptjavascript是一门单线程语言,在最新的HTML5中提出了Web-Worker,但javascript是单线程这一核心仍未改变。所以一切javascript版的"多线程"都是用单线程模拟出来的。2.多线程/单线程的简单理解:多线程: 程序可以同一时间做几件事。单线程: 程序同一时间只能做一件事。3.JS为什么是单线程的?JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。那么,为什么JavaScript不能有多个线程.原创 2020-12-21 10:15:49 · 367 阅读 · 0 评论 -
ES6_Proxy详解
Proxy 是 ES6 为了操作对象引入的 API 。Proxy 可以对目标对象的读取、函数调用等操作进行拦截,然后进行操作处理。它不直接操作对象,而是像代理模式,通过对象的代理对象进行操作,在进行这些操作时,可以添加一些需要的额外操作。基本用法一个 Proxy 对象由两个部分组成: target 、 handler 。在通过 Proxy 构造函数生成实例对象时,需要提供这两个参数。 target 即目标对象, handler 是一个对象,声明了代理 target 的指定行为。let ta原创 2020-11-24 11:30:39 · 2862 阅读 · 0 评论 -
Js_事件循环机制、微任务、宏任务。
今天简单说下js的事件循环机制,我们都知道,javascript是单线程语言,它的核心,也是因为它的单线程。有很多小白不清楚EventLoop到底是什么,按照中文翻译,就是事件循环,那js到底是怎样将同步和异步进行处理的。这篇文章,就简单说一说,js的单线程处理,也就是同步和异步的代码是怎样走向的。一、同步和异步:所有的线程,都是有同步队列,和异步队列,立即执行的任务队列,这些都是属于同步任务,比如一个简单的函数;请求接口发送ajax,发送promise,或时间计时器等等,这些就是异步原创 2020-11-23 16:24:29 · 128 阅读 · 0 评论 -
Js_数组方法
数组的方法一共有很多,见下表函数 作用 join() 将数组中所有元素都转化为字符串连接在一起 sort() 将数组中的元素排序 reverse() 将数组中的元素颠倒顺序 concat() 将多个数组或数连接起来,组成一个新的数组 slice() 返回指定数组的一个片段或子数组 splice() 在数组指定位置插入或删除元素 push() 在数组的尾部添加一个或多个元素 pop() 删除数组的最后一个元素,并返回该元原创 2020-11-23 09:12:21 · 211 阅读 · 0 评论 -
Js_理解ES6的class 中 constructor 方法 和 super 的作用
首先,ES6 的 class 属于一种“语法糖”,所以只是写法更加优雅,更加像面对对象的编程,其思想和 ES5 是一致的。function Point(x, y) { this.x = x; this.y = y;}Point.prototype.toString = function() { return '(' + this.x + ',' + this.y + ')';}等同于class Point { constructor(x, y) { this原创 2020-11-16 09:52:49 · 6319 阅读 · 3 评论 -
Js基础_闭包
一、变量的作用域要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。Js代码 var n=999; function f1(){ alert(n); } f1(); // 999 另一方面,在函数外部自然无法读取函数内的局部变量。Js代码 function...原创 2020-10-27 16:50:44 · 100 阅读 · 0 评论 -
Js设计模式_发布订阅者模式
(本篇文章是我在早高峰上班地铁上刷到了一篇公众号发布的文章,感觉讲的非常好,特分享给大家。每天坚持学习,感谢公众号大佬的分享,公众号:nodejs全栈开发)首先我们用一个示例来演示一下什么是观察者模式,有这样一个场景,在一个院子里,有一个小偷,和若干条狗,小偷只要一行动,狗就会叫,狗叫的动作是依赖小偷的,如果小偷不行动,狗是不会叫的,也就是说狗的叫的状态依赖小偷的行动,小偷的行动状态发生变化,依赖小偷的狗都会受到影响,从而发出叫声。这个场景用代码来展示的话如下:// 第一版class Thi原创 2020-08-04 09:58:31 · 698 阅读 · 1 评论 -
Js基础_async_await_promise解决回调地狱
async的用法async就是异步的意思,它作为一个关键字放到函数前面,用于表示函数是一个异步函数异步函数也就意味着该函数的执行不会阻塞后面代码的执行,而async函数返回的是一个promise对象。 async function func() { return "async" }; func(); console.log('执行'); //控制台输出 执行可以看出async异步并不阻塞后面代买的执行 async function ..原创 2020-08-11 16:48:49 · 275 阅读 · 0 评论 -
Js基础_防抖和节流
防抖和节流严格算起来应该属于性能优化的知识,但实际上遇到的频率相当高,处理不当或者放任不管就容易引起浏览器卡死。所以还是很有必要早点掌握的。(信我,你看完肯定就懂了)从滚动条监听的例子说起先说一个常见的功能,很多网站会提供这么一个按钮:用于返回顶部。这个按钮只会在滚动到距离顶部一定位置之后才出现,那么我们现在抽象出这个功能需求--监听浏览器滚动事件,返回当前滚条与顶部的距离这个需求很简单,直接写:function showTop () { var scrollTop = ..原创 2020-09-23 09:30:01 · 137 阅读 · 0 评论