执行方式1:

                在 cmd 中 任意文件夹路径下输入 node 回车


                C:\Users\32991>node

                Welcome to Node.js v12.18.3.

                Type ".help" for more information.

                >          


                进入了node编辑环境,可以输入执行任意的js程序

                与在 浏览器控制台中 输入 js程序的执行效果完全相同


                只能执行 JavaScript程序命令,不能加载执行外部js文件


                退出 node 模式 ctrl + c 连续两次


            执行方式2:

                执行外部js文件中的程序

                1,必须将盘符切换至,外部js文件在所的文件夹

                2,输入 node 文件名 文件名包括 文件名称和扩展名 回车执行

                  光写文件名有时也能执行,为了防止文件名相同,扩展名不同的冲突情况发生,推荐写扩展名

                  

                实际项目中,都是使用node环境运行,外部js文件

 

        // node.js的模块化开发

        // 在 node.js 中执行的都是 模块化开发

        // 所谓的模块化开发,就是把 node.js 的 功能开发好,封装成一个代码块,我们只需要使调用使用就可以了

        // node.js 中的模块化开发有3种形式

        // 1, 内置模块  :node.js封装好的模块

        //    手机中自带的APP软件

        // 2, 第三方模块:别人开发的模块

        //    别人开发的APP软件

        // 3, 自定义模块:我们自己开发的模块

        //    我们自己开发的APP软件

 

        // 内置 fs 模块

        // 读取,写入文件内容的操作模块

        // 不需要加载可以直接使用

        // 操作步骤


        // 1, 创建一个fs模块对象,导入fs模块

        // require 是 node.js的关键词,作用就是导入模块

        // ()中以字符串的形式,定义模块名称


        // // 导入/使用 fs内置模块

        // const fs = require('fs');   


        // 2, 可以使用 fs 模块功能


        // 读取文件

        // (1), fs对象.readFile( 要读取的文件路径 , 编码格式(选填) , 读取结束执行的回调函数) 

        //    参数1:读取文件的路径: 可以是 url地址,也可以是从当前js文件触发的相对路径

        //    参数2:读取文件的编码格式,如果不写,执行默认格式 buffer , 我们看不懂,一般的设定 utf8

        //    参数3:回调函数

        //          固定有两个参数

        //          参数1:不管叫什么名字,存储的都是报错信息

        //          参数2:不管叫什么名字,存储的是读取文件的文件内容

        //    如果,读取争取,参数1,存储的报错信息是null

        //    如果,读取失败,参数2,存储的读取信息是undefined


        // (2), fs对象.readFileSync()  readFile() 的同步形式

        // 参数功能等等一切都相同,是指同步异步的区别


        // 写入文件

        // (1), fs对象.writeFile( 要写入的文件路径 , 要写入的内容 , 回调函数 )

        //     如果有文件会向文件中写入内容,如果没有文件,创建新的文件,执行写入操作

        //     这个操作,一定没有报错

        //     执行的是覆盖写入,新写入的内容,会覆盖之前定义的内容


        // (2), fs对象.writeFileSync()  writeFile 的异步形式

        // 参数功能等等一切都相同,是指同步异步的区别