1JavaScript 设计模式有哪些?
本系列开始系统性的对 20 多种 JavaScript 设计模式进行简单概述,然后结合 ES6 类的方式来编写实例代码展示其使用方式。
什么是设计模式?
设计模式是软件设计中常见问题的解决方案,这些模式很容易重复使用并且富有表现力。
在软件工程中,设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案。它并不直接用来完成代码的编写,而是描述在各种不同情况下,要怎么解决问题的一种方案。面向对象设计模式通常以类别或对象来描述其中的关系和相互作用,但不涉及用来完成应用程序的特定类别或对象。—— 维基百科
有三种模式:创建型模式,结构型模式、行为型模式。
- 创建型模式:解决与创建对象相关的问题。
- 结构型模式:处理实体之间的关系,以及它们如何共同组成一个更大的结构。
- 行为型模式:处理对象如何相互通信和交互。
设计模式系列文章:
2["1","2","3"].map(parseInt)返回值是多少?
返回值是:
[1,NaN,NaN]
parseInt
与map
函数都是常用的函数,可是 ["1", "2", "3"].map(parseInt)
为何返回不是[1,2,3]
却是[1,NaN,NaN]
?
下面我们先来了解一下parseInt函数的使用方法。
parseInt() 函数
parseInt()
函数解析一个字符串参数,并返回一个指定基数的整数 (数学系统的基础)。
语法
parseInt(string, radix)
参数 | 描述 |
---|---|
string | 必需。要被解析的字符串。 |
radix |
可选。表示要解析的数字的基数。该值介于 如果省略该参数或其值为 0,则数字将以 10 为基础来解析。如果它以 “0x” 或 “0X” 开头,将以 16 为基数。
|
返回值
返回解析后的数字。
说明
当参数 radix 的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数字的基数。
一下情况返回值为NaN
radix
小于2
或大于36
- 第一个非空格字符不能转换为数字。