陆军中的AI与自主机器人
请注意,上述三种方法不会更改原始数组的值。 20.纯函数,副作用和状态变更 这三个概念对于 JS 开发人员而言非常重要,状态变更对于使用 React 的开发人员尤其重要。 纯函数指的是一个函数的返回结果只依赖于它的参数,并且在执行过程里面没有副作用。 函数副作用是指当调用函数时,除了返回函数值之外,还对主调用函数产生附加的影响。副作用的函数不仅仅只是返回了一个值,而且还做了其他的事情,比如:
状态变更是指你更改变量值的地方。如果你对变量进行更改,则可能会影响到其他函数,具体取决于变量被更改之前的值。在React环境中,建议我不要改变状态。 21. 闭包
闭包很难理解。但是一旦理解,你会觉得 JS 其实也挺好的。在线上有足够的资源。你花足够的时间学习闭包,掌握理解它并不难。 如果你对this关键字很清楚,则可以看看apply,call和bind方法,这些都可以解决 this 指向引发的问题。 16.构造函数和 “instanceOf” 运算符 构造函数就像常规函数一样。但是它们有很多差异,函数名称以大写字母开头,并且只能由new运算符执行。具有OOP开发经验的程序员会熟悉new关键字。 为了正确识别对象的类型,我们使用instanceOf运算符。简单来说,它检查一个对象是否是另一个对象的实例。 这才助于你理解对象如何相互继承,继承是通过原型实现的。 17.原型 这是 JS 中最令人困惑的概念之一,即使对于有十年经验的人来说也是如此。 JavaScript中的原型是在对象之间共享通用功能的机制。JavaScript中几乎所有对象都是Object的实例。对象会从Object.prototype继承所有属性和方法。 简单来说,原型是 JS 对象从中继承方法和属性的对象。 理解了原型,你就可以构建高效,快速的应用程序。 18. 使用 new,Object.create 和 Object.assign 创建对象 创建对象有很多方法。但是,大都会选择Object.create方法而不是new关键字。这是有原因的,因为 使用Object.create方法时,可以将现有对象用作新创建的对象的原型。这样就可以重用现有对象的属性和功能,有点像OOP中的继承概念。 使用Object.assign方法时,可以将可枚举的自身属性从一个或多个源对象复制到目标对象。在这种情况下,目标对象的原型不包含源对象的属性。这是这两种方法之间的主要区别。 通过了解对象创建的这三种方式,可以根据实际情况适当地使用它们,以创建效率更高的程序。 19.map,filter, reduce 方法 当涉及到数组操作时,这三种方法非常有用。它们可以在Array原型中找到。 如果你有一个数组,并且想对每个元素做一些事情,那么您可以使用map方法。 如果你有一个数组,并且想通过某些条件来过滤一些值时,则可以使用filter方法。 reduce() 方法对数组中的每个元素执行一个由你提供的reducer函数(升序执行),将其结果汇总为单个返回值。
典型的例子就是对数组的所有元素进行求和: (编辑:甘孜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |