
重学JavaScript系列
文章平均质量分 93
syzdev
这个作者很懒,什么都没留下…
展开
-
JavaScript原型与原型链(总结篇)
1 构造函数和实例对象构造函数的prototype属性为其实例化对象的原型__proto__:function Cat(name, age) { this.name = name this.age = age}const kat = new Cat('kat', 2)console.log(kat.__proto__ === Cat.prototype) // true2 构造函数属性constructorconstructor属性用于通过实例对象或原型获取其构造函数:funct原创 2022-04-06 12:26:19 · 1126 阅读 · 0 评论 -
JavaScript原型与原型链(进阶篇)
1 intanceof运算符instanceof运算符用于判断构造函数的prototype属性是否出现在对象的原型链中,使用方法如下:function Cat(name, age) { this.name = name this.age = age}const kat = new Cat('kat', 2)console.log(kat instanceof Cat) // trueconsole.log(kat instanceof Object) // true在这个例子中,由原创 2022-04-05 13:53:15 · 636 阅读 · 0 评论 -
JavaScript原型与原型链(基础篇)
0 前言原型机制一直都是JavaScript的核心之一,网上有人说理解了原型机制,也就理解了JavaScript的一半精髓了。网络上关于原型的文章大多数都是围绕着“原型是什么?”“原型如何使用?”这两大核心问题的,但是对于JavaScript初学者,尤其是有C++或Java基础的JavaScript初学者来讲,很难理解另一种非类(class)的继承机制,出于这个问题,本文从语言设计者的角度,由浅入深、循序渐进的介绍JavaScript的继承机制,并引入原型的概念,希望对初学者有所帮助。注意:了解ES6的原创 2022-04-02 16:16:02 · 1686 阅读 · 1 评论 -
JavaScript数组方法大全解
0 前言本文只讲解标准化方法,而不会讲解实验性方法,如at()、groupBy()、groupByMap()和toSource()。数组中的部分方法需要提供区间范围begin/start和end,所有含有这类范围的方法,其区间都遵循左闭右开原则,如(1,4),在数学上可以理解为[1,4)。部分数组方法会改变原数组,这一点一定要注意。1 是否改变原数组1.1 改变原数组的方法填充与复制方法:fill()、copeWithin();栈方法:pop()、push();队列方法:shift()原创 2022-03-25 14:56:22 · 1814 阅读 · 3 评论 -
JavaScript中this的五种绑定方式详解
1 this的五种绑定方式1.1 默认绑定默认绑定是指当函数调用时,没有为其指定对象上下文,此时会将该函数的this绑定到全局对象(window对象)。自ES5有了严格模式之后,默认绑定方式又分为非严格模式的默认绑定和严格模式的默认绑定。1.1.1 非严格模式在非严格模式下,函数的默认绑定只能绑定到全局对象window,见下面例子:var myName = 'syzdev' // 相当于 window.myName = 'syzdev'function sayName() { // 这里的原创 2022-03-22 20:17:38 · 2862 阅读 · 0 评论