javascript基础练习题之终端ATM

40 阅读2分钟

javascript基础练习题之终端ATM

OIP-C.jpg

1. 模块化与 import 语句

代码中运用 import 语句从 node:readline/promises 模块引入 readline 对象,这属于 ES6 模块化的内容。在 Node.js 里,借助模块化能够将代码划分成多个文件或者模块,从而提升代码的可维护性与复用性。

2. readline 模块的使用

readline 模块属于 Node.js 内置模块,可用于处理用户的输入输出。代码里创建了一个 readline 接口,利用 question 方法提示用户输入内容,这在命令行程序里是常用的交互手段。

3. 闭包与对象封装

ATM 函数构建了一个闭包,在函数内部定义了 balance 变量以及 depositwithdrawcheckBalance 这些方法。balance 变量被封装在 ATM 函数内部,外部无法直接访问,只能通过返回的对象里的方法来操作。这种方式达成了数据的封装与隐藏,符合面向对象编程的思想。

4. 函数作为一等公民

在 JavaScript 中,函数属于一等公民,能够作为变量赋值、作为参数传递或者作为返回值返回。ATM 函数返回一个包含多个函数的对象,这些函数能够在外部调用,这体现了函数作为一等公民的特性。

5. 条件判断与循环结构

代码使用了 while (true) 循环达成持续与用户交互的目的。在循环内部,通过 if 语句依据用户的输入执行不同的操作。这考察了对条件判断和循环结构的运用能力。

6. 异步操作与 await 关键字

question 方法返回的是一个 Promise 对象,代码中运用 await 关键字等待用户输入,这要求在 async 函数中使用。这考察了对异步操作和 async/await 语法的理解与运用。

7. 数据类型转换

在处理用户输入的金额时,使用 parseInt 函数把字符串类型的输入转换为整数类型,这考察了对数据类型转换的理解。

8. 程序退出

当用户输入 4 时,使用 process.exit() 方法退出程序,这考察了对 Node.js 进程控制的理解。