JS
文章平均质量分 59
JAVASCRIPT
九维魔术师
一个计算机专业的学生
展开
-
js的运行机制, 事件队列和循环
一、阮一峰网站JavaScript 运行机制详解:再谈Event Loop - 阮一峰的网络日志 (ruanyifeng.com)行文思路:1.为什么JS是单线程?这句话我看到很多遍了“比如,假定JavaScript同时有两个线程,一个线程在某个DOM节点上添加内容,另一个线程删除了这个节点,这时浏览器应该以哪个线程为准?”,我其实一直有个问题,那其他多线程的语言是怎么解决这个问题的呢?也许是更加复杂了。“为了利用多核CPU的计算能力,HTML5提出Web Worker标准,允许Java原创 2021-12-09 16:08:02 · 268 阅读 · 0 评论 -
JS 的 new运算符
一、MDNnew 运算符 - JavaScript | MDN (mozilla.org)二、方应杭知乎JS 的 new 到底是干什么的? - 知乎 (zhihu.com)原创 2021-12-08 15:08:12 · 515 阅读 · 0 评论 -
原型(prototype)与原型链
prototype经典永流传~~ 本文将持续更新首先插一个阅读文章时常见的知识:语法糖。(32 封私信 / 80 条消息) 什么是语法糖? - 知乎 (zhihu.com)百科上的解释不像知乎这么生动,当然,看懂随意。回到正题:一、MDN继承与原型链 - JavaScript | MDN (mozilla.org)建议没基础的不要看这个。二、方应杭知乎「每日一题」什么是 JS 原型链? - 知乎 (zhihu.com)思路: 1.obj 为什么...原创 2021-12-05 20:07:51 · 431 阅读 · 0 评论 -
深拷贝和浅拷贝的解析
越写越感觉深拷贝很复杂,我选择长期更新~不过根据这些总结,deepcopy需要根据具体的案例去实现,因为你不知道对象里有多深~一、没有标题是因为我记不清这个观点是那里看到的了,如果能找到的话,将在上面加上去链接。1.原因 赋值操作中JS中的引用类型造成的。2.数组中的浅拷贝方法: (1) 遍历 (2) slice() (3)数组原生concat([])方法3.此君写了一个深拷贝deepcopy函数...原创 2021-12-05 17:03:20 · 53 阅读 · 0 评论 -
数据类型篇——基本(值)类型/对象(引用)类型
数据类型最基本的是分类和判断。_____________________________________________________________________________在总结这篇文章的时候,我的脑海里一直被一个问题所困扰:使用一个变量的完整过程是什么?更细节点,我知道初始化和赋值,但是一个变量的定义,声明,创建这三者有什么区别呢?还是最经典的第一步,先查阅官方文档,官方文档相对是权威的。MDN对变量的声明,创建,定义三者之间并没有明确区分,当然,这是翻译后的文档,英文中这三个原创 2021-12-05 16:25:00 · 222 阅读 · 0 评论 -
经典的必问闭包(Closure)
常见英文单词: heap: 堆 stack:栈解释:堆栈是两种数据结构。马上将在另一个专栏里写写数据结构与算法。一、MDN:一个函数和对其周围状态(lexical environment,词法环境)的引用捆绑在一起(或者说函数被引用包围),这样的组合就是闭包(closure)。也就是说,闭包让你可以在一个内层函数中访问到其外层函数的作用域。在 JavaScript 中,每当创建一个函数,闭包就会在函数创建的同时被创建出来。闭包 - JavaScript | MDN ...原创 2021-12-04 22:30:49 · 886 阅读 · 0 评论 -
this是什么?
一、阮一峰日志JavaScript 的 this 原理 - 阮一峰的网络日志 (ruanyifeng.com)这里的this讲得如同下面的评论:图文结合,通俗易懂。二、方应杭知乎this 的值到底是什么?一次说清楚 - 知乎 (zhihu.com)行文思路: 1.首先需要从函数的调用讲起 2.this就是contextfunc.call(context, p1, p2)...原创 2021-12-03 17:07:35 · 191 阅读 · 0 评论 -
JS中关于let和var的总结
这三个月来的总结都写到了本地,一直没有发布。我从今天开始会陆续写写对前端三大基本功和VUE的知识点总结。文章如果是其他人的观点,我会注明出处。首先是ES6中的let和var:一. 阮一峰网站let 和 const 命令 - ECMAScript 6入门 (ruanyifeng.com)总结:1. let所声明的变量,只在let命令所在的代码块内有效。 var命令声明的,在全局范围内都有效.2.let不存在变量提升 ,var存在(var命令会发生“变量提升”现象,即变...原创 2021-12-03 15:19:42 · 512 阅读 · 0 评论