
javascript
同是天涯程序猿
编程、运动、音乐
展开
-
ECMAScript中平等比较标准,区分 == 和 ===
抽象平等比较 ==比较 x == y 的结果,x 和 y 是值,产生 true 或 false,判定规则顺序如下:如果 x 的类型与 y 的类型相同,则返回 x === y ,即进行严格平等比较如果 x 为null,y 为 undefined,则返回 true如果 x 为undefined,y 为 null,则返回 true如果 x 为数值类型,y 为字符串类型,则返回 x == ToNumber(y)如果 x 为字符串类型,y 为数值类型,则返回 ToNumber(X) == y如果 x原创 2020-08-28 14:59:10 · 345 阅读 · 0 评论 -
理解JavaScript基本数据类型symbol
symbol概念symbol是一个ES6标准种新增的一种基本数据类型,在JavaScript中,共有七种基本数据类型:string、number、bigint、boolean、null、undefined、symbol。并且除了null和undefined之外,每个基本类型都有其包装对象。symbol 的值是通过 Symbol() 函数生成,每一个 symbol 的值都是唯一的,并且 symbol 类型的值可以作为对象的属性标识符使用,这也是 symbol 类型设计的目的。所以现在对象属性名可以为两原创 2020-08-19 20:46:34 · 32966 阅读 · 2 评论 -
简述浏览器渲染原理
浏览器渲染原理浏览器渲染过程大致过程如下:1 浏览器获取 HTML 文件构建成文档对象模型树 DOM(Document Object Model)TreeDOM 树的构建是一个深度优先遍历的过程,当前节点的子节点全部构建才会构建下一个同级节点。DOM 的根节点为 document 对象。DOM 树的生成过程会被CSS和JS加载执行阻塞。解析过程的实际结束会触发 DOMContentLoaded 事件2 当解析到样式定义,不管是样式文件还是嵌入的 CSS 都会被解析成层叠样式表模型 CSSOM原创 2020-08-14 15:21:41 · 1536 阅读 · 0 评论 -
简单理解JavaScript闭包
闭包(closure)MDN中的解释函数和对其周围状态(lexical environment,词法环境)的引用捆绑在一起构成闭包(closure)。也就是说,闭包可以让你从内部函数访问外部函数作用域。在 JavaScript 中,每当函数被创建,就会在函数生成时生成闭包。从技术角度讲,每个JavaScript函数都是闭包,因为他们都是对象且都关联到了作用域链。举个例子function f1(){ var n=999; function f2(){ alert(n); // 9原创 2020-07-28 20:35:02 · 203 阅读 · 0 评论 -
JavaScript事件循环机制
JavaScript事件循环机制JavaScript是单线程的,但JavaScript可以通过事件循环的机制来处理同步任务和异步任务概念执行栈JavaScript中函数调用会在栈中生成若干帧,帧也可以理解为一个执行上下文,包含函数的参数和函数可访问的局部变量,当完全执行完栈顶的函数,会将其弹出栈,并继续执行下面的函数。JavaScript中的任务分为两种,同步任务和异步任务,同步任务会在执行栈中按顺序执行,而异步任务进入任务队列中等待,当执行栈中的函数都执行完成后才会去队列中查找执行。执行栈中的原创 2020-07-28 19:26:37 · 312 阅读 · 0 评论 -
经典前端面试题
什么是prototype,什么是原型链JavaScript是动态语言,是基于原型的,并且JavaScript中只有一种结构,那就是对象,每一个实例对象(Object)都有一个__proto__的私有属性指向它的原型对象(prototype):function abc(){}var a = new abc();a.__proto__ === abc.prototype; // true在创建一个对象时,编译器会为对象赋值__proto__属性。层层向上,直到一个对象的原型对象为null,而规定nu原创 2020-07-25 23:12:22 · 207 阅读 · 0 评论 -
JavaScript中this究竟是个啥
js中的this是什么,相信有经验coder肯定都用过,但被问起来又似懂非懂的搞不清楚,实际上this在定义的时候还不能确定是什么,只有在调用之后才会被确定,可以说this指的就是他所属的对象,一般分几种情况单独的情况单独的情况下,this指的是全局对象,例如在浏览器窗口中:this === window // true函数中使用在函数中的this,指的是调用函数的对象,看几个例子:...原创 2020-03-29 14:31:44 · 254 阅读 · 0 评论 -
如何获取js异步请求返回值
使用定时函数模拟异步请求回调函数function doSomething(callback){ setTimeout(function(){ console.log('执行结束'); let result = 4; callback(result); },100);}function callback(result){...原创 2018-02-25 16:39:21 · 9642 阅读 · 0 评论