JavaScript 江湖
文章平均质量分 89
JavaScript 语法知识介绍,方便于己,惠及于人。
秋堂主
倚楼听风雨,淡看江湖路!
展开
-
第8集丨JavaScript 中函数——Arguments 对象
`arguments` 是一个对应于传递给函数的参数的类数组对象。`arguments` 对象是所有(非箭头)**函数中**都可用的**局部变量**。你可以使用`arguments`对象在函数中引用函数的参数。此对象包含传递给函数的每个参数,第一个参数在索引 `0 `处。如果调用的参数多于正式声明接受的参数,则可以使用`arguments`对象。这种技术对于可以传递可变数量的参数的函数很有用。使用 `arguments.length`来确定传递给函数参数的个数,然后使用`arguments`对象来处理每个参原创 2023-07-13 11:51:22 · 235 阅读 · 0 评论 -
第7集丨JavaScript 中函数——概述
一般来说,一个函数是可以通过外部代码调用的一个“子程序”(或在递归的情况下由内部函数调用)。像程序本身一样,一个函数由称为函数体的一系列语句组成。值可以传递给一个函数,函数将返回一个值。在 `JavaScript `中,函数是头等 (`first-class`)对象,因为它们可以像任何其他对象一样具有属性和方法。它们与其他对象的区别在于函数可以被调用。简而言之,它们是`Function`对象。调用函数时,传递给函数的值被称为函数的实参(**值传递**),对应位置的函数参数名叫作**形参**。原创 2023-07-12 11:49:36 · 119 阅读 · 0 评论 -
第6集丨JavaScript 使用原型(prototype)实现继承——最佳实战3
在这种继承模式中,父对象的属性是以子对象自身的属性的身份来重建的(这与原型链模式中的子对象属性正好相反)。这也体现了构造器借用法的一大优势:当我们创建一个继承于数组或者其他对象类型的子对象时,将获得一个完完全全的新值(不是一个引用),对它做任何修改都不会影响父对象。这样的动态语言来说,实现多重继承是很简单的,尽管语言本身没有提供特殊的语法单元多重继承实现是极其简单的,我们只需要延续属性拷贝的继承思路依次扩展对象,不对其所继承的对象数量参数进行输入限制即可实现。这样一来,父对象的自身属性事实上被继承了两次。原创 2023-07-11 09:07:07 · 730 阅读 · 1 评论 -
第5集丨JavaScript 中浅拷贝(extendCopy)和深拷贝(deepCopy)——最佳实践
我们在上集中,封装extend()函数时知道,当对象类型的属性被拷贝时,实际上拷贝的只是该对象在内存中的位置指针,这一过程我们陈之为。在这种情况下,如果我们修改了拷贝对象,就等同于修改了原对象。那么,与之想对的,当然就是所谓的了。本集重点内容,就是带领诸君,如何实现浅拷贝和深拷贝。做一件事情的时候,最佳时间就是现在。因此,姑且就称之为最佳实践吧。实践出真知,没有实践知识就不会变成真知,久而久之,就变成了一个空谈主义者了。通过实践而发现真理,又通过实践而证实真理和发展真理。原创 2023-07-10 09:11:08 · 100 阅读 · 0 评论 -
第4集丨JavaScript 使用原型(prototype)实现继承——最佳实战2
书接上集,在上集中我们给出了一个需求说明,要求利用现学的知识实现原型(prototype)继承,并且我们给出了三种实现方式。但是这三种方式各自有优缺点,都不能很好的满足要求,那是否还有其他更好的实现方式呢?在看本文之前,诸位可以自己思考下?带着问题去学习总是能够学到更多内容。在以后的岁月中,会找一些有意义的句子,与诸君共勉。在时间的稿纸上,每个人都在写着自己的历史。当你抓着今天时,你就会前进一步,当你丢弃今天时,你就会停滞不动。原创 2023-07-07 10:27:49 · 694 阅读 · 0 评论 -
第3集丨JavaScript 使用原型(prototype)实现继承——最佳实战1
在JavaScript中, 继承机制的基础是,(包括内部原型__proto__和prototype当访问一个对象的属性时,JavaScript引擎是这么搜索的:如果在本对象中找不到一个属性时,就会去其原型对象中找,如果原型对象中还没找到的话,就去到原型对象中的原型中去找,直到顶级父类Object对象为止。纸上得来终觉浅,绝知此事要躬行。所以,无论是什么知识,如果不在实践中去进行学习,最终必然是无法深入理解。接下来,就进入本集的重点部分,用上集学习到的知识实现原型继承,姑且将其称之为最佳实战。原创 2023-07-06 09:16:54 · 568 阅读 · 0 评论 -
第2集丨JavaScript 中原型链(prototype chain)与继承
对于使用过基于类的语言(如Java或C++)的开发者来说,JavaScript实在是有些令人困惑——JavaScript是动态的且没有静态类型。一切都是对象(实例)或函数(构造函数),甚至函数本身也是 Function 构造函数的实例。即使是语法结构中的“类”也只是运行时的构造函数。当谈到时,JavaScript。每个对象(object)都有一个私有属性指向另一个名为原型(prototype)的对象。原型对象也有一个自己的原型,层层向上直到一个对象的原型为null。根据定义,null。原创 2023-07-05 10:44:51 · 507 阅读 · 0 评论 -
第1集丨JavaScript 中核心概念——闭包:到底是个什么东东
在JavaScript中, 很多初学者都听说过`闭包`,但不一定理解闭包,闭包到底是个什么东东?在一些编程语言中,一个函数中的局部变量仅存在于此函数的执行期间。一旦函数执行完毕,里面的变量将不能再被访问。然而,在 `JavaScript `中情况显然与此不同。因为`JavaScript`中的函数会形成了闭包。 闭包是由函数以及声明该函数的词法环境组合而成的。该环境包含了这个闭包创建时作用域内的任何局部变量。闭包很有用,因为它允许将函数与其所操作的某些数据(环境)关联起来。这显然类似于面向对象编程原创 2023-07-04 10:04:56 · 118 阅读 · 0 评论