掘友等级
获得徽章 0
day27
无符号右移 (左边空出位用 0 填充)a >>> b把 a 的二进制表示向右移动 b 位,丢弃被移出的所有位,并把左边空出的位都填充为 0
day26
由Promise.all()返回的 Promise:
当且仅当数组中所有的 Promise 都被兑现时,才会通知 then() 处理函数并提供一个包含所有响应的数组,数组中响应的顺序与被传入 all() 的 Promise 的顺序相同。
会被拒绝——如果数组中有任何一个 Promise 被拒绝。此时,catch() 处理函数被调用,并提供被拒绝的 Promise 所抛出的错误。
day25
使用 === 进行严格相等比较
严格相等比较两个值是否相等。两个被比较的值在比较前都不进行隐式转换。如果两个被比较的值具有不同的类型,这两个值是不相等的。否则,如果两个被比较的值类型相同,值也相同,并且都不是 number 类型时,两个值相等。最后,如果两个值都是 number 类型,当两个都不是 NaN,并且数值相同,或是两个值分别为 +0 和 -0 时,两个值被认为是相等的。使用 == 进行宽松相等比较
宽松相等是对称的:对于任何 A 和 B 的值,A == B 总是与 B == A 具有相同的语义(除了转换应用的顺序)
day24
DOM事件
事件可以是浏览器行为,也可以是用户行为,当事件触发时,可以执行对应的js代码
常见事件
事件 描述
onchange HTML 元素改变
onclick 用户点击 HTML 元素
onmouseover 用户在一个HTML元素上移动鼠标
onmouseout 用户从一个HTML元素上移开鼠标
day23
JavaScript 中,函数及变量的声明都将被提升到函数的最顶部。
JavaScript 中,变量可以在使用后声明,也就是变量可以先使用再声明
day 22JS 中的对象分为三类:
内置对象(静态对象):js本身已经写好的对象,我们可以直接使用不需要定义它。
常见的内置对象有 Global、Math(它们也是本地对象,根据定义每个内置对象都是本地对象)。
本地对象(非静态对象):必须实例化才能使用其方法和属性的就是本地对象。
常见的本地对象有 Object、Function、Data、Array、String、Boolean、Number、RegExp、Error等
宿主对象:js运行和存活的地方,它的生活环境就是DOM(文档对象模式)和BOM(浏览器对象模式)。
day 21
JavaScript 提供三种不同的值比较运算:
===——严格相等(三个等号)
==——宽松相等(两个等号)
Object.is()
day20
继承的九种方法
原型链继承
盗用构造函数
组合继承(原型链+盗用构造函数)
原型式继承
Object.create
Object.setPrototypeOf
寄生式继承
寄生式组合继承
Object.create + 盗用构造函数
Object.setPrototypeOf + 盗用构造函数
类继承
day19
事件处理程序是一种特殊类型的回调函数。而回调函数则是一个被传递到另一个函数中的会在适当的时候被调用的函数。回调函数曾经是 JavaScript 中实现异步函数的主要方式。
day18
定义getter和setter方法时,通常需要为属性使用不同的名字,以避免引发死循环。
如果属性和getter/setter方法具有相同的名字,则调用方法会导致无限递归调用,并最终导致堆栈溢出错误。
下一页