概念
node是一个运行js的平台,在node中,用global对象取代了Window这个对象。
node中的repl环境可以执行js,通过命令node
进入到repl环境。repl环境类似于Chrome的开发人员工具。
全局对象global
可以参考一下它的文档global全局对象
node版本介绍,稳定版,弃用版,长期维护版本
稳定性。为零的这样一些啊提示主要的原因是因为什么呢?它里面是长期维护版本
什么叫长期维护
process:
用于去获取和note相关的一些信息,可以通过它去往控制台去打印一些内容啊
那process这个单词本身是什么意思,是进程对吧?
什么是进程?
这个也是咱们接下来要去看的一个点啊
你现在就可以认为是我们node的应用程序运行起来的时候。
比如说进入到repl环境,是不是node正在运行着呢
那正在运行着的话,我们就可以启动任务管理器。是不是应该在这个里面可以找到node.exe这样一个进进程。
是不是有这样一个进程,那每一个软件在打开过后
在内存当中的一种形态可以说是一个进程啊
比如说我这个NVM这5.7这有个exe
我并没有把它运行起来
它只是一个可执行文件,并不是一个进程
把它双击过后打开
打开的时候,这时候是不是会在内存里面给它开辟空间
然后呢,让它运行起来
我们把它给这个应用程序开辟的这块空间就可以说是一个进程
那进程与进程之间一般来讲的话都是相互隔离的
那你想这个进程这个概念我们有大概的了解
你觉得进程对象里面会有什么东西。来我们看一下啊
进程里面event是不是有一些事件呀
再往下看看它有没有什么属性之类的东西啊来走哎
你看下面是不是有一些这种是属于什么呢?
方法后面是不是它会有这种括弧的形式啊
这种是什么呢?是不是一个属性对不对啊
是不是当前操作系统的一个位数了
还有什么RV这个又是干什么的这些哈
我不可能一个一个的去给你们解释
其实取决于就是取决于我们当下有没有这样的需求
它实际上就是去获取咱们在命令行当中传入的参数啊来来
我们教一下粘停一下小回车
我们现在一开始的时候还是不要用借助于像这种编译器有智能提示的东西
因为这样的话会让你脑子里面感觉啊
这种东西也不用记
我们有智能提示
一提示就出来了
你还是先开始的时候就跟你们练H一样
最开始的时候就用普通的编辑器去写
我不知道你们当时学的时候有没有用notepad写过
我们当时我们自己学的时候就是先用那个记事本就什么都没有
连代码着色的东西都没有的那个那种工具去写A贴面代码
然后导致我们现在就是A贴面闭着眼睛都能写出来
对吧?啊
用角度可以写出来是吧?好
那算了好
呃
那个刚刚那个有点走哈
来我们来回到这边啊
回到这边
那这时候呢
我们有了这样一个东西过后
我们要想运行它
我们还是简单回顾一下
是不是先在命令行里面打开这个目录
对吧?好打开这个目录过后是什么node什么。是不是零二对吧
GS这个扩展名呢
是它的默认扩展名
所以说我们可以省略
能不能理解我意思啊
我们需要回车
你看这时候它打印出来的是什么东西。一个node exe对吧
我们刚刚在那个里面打印是不是也是一个node exe
这也是一个node exe哈
他任何一个情况下
这个2V里面第一个成员都是node exe所在的目录啊
第二个成员是什么呢?就是你正在执行的这个文件对吧?好
我们看它有没有可能出现第三个成员哈
来我们在后面再接着写0304。零五注意我们说了
其实敲命令
敲命令就是说这个命令里面的第一个是我们执行的那个程序
对吧
后面的这些是不是都是参数啊啊
其实这个AV指的是什么意思呢?就是argument
能理解我意思吧
来消回车你会发现什么?第一个
第二个
第三个
第四个
第五个是不是把我们把后面的这些全部给它放进去了
那note它在执行的时候
它默认是将第一个参数作为一个文件去读取出来
然后呢
通过no的这个程序给它执行起来
剩下的参数是不是直接丢进去
没有做任何处理啊
能理解我意思吧
也就是说我们后面的可以写任何的东西的啊
任何的东西
你像大家经常用的一些命令的时候
是不是有可能带一些参数啊
这个后面我们也会自己做一些命令行的工具啊
你像我们NPM是不是有个in的一个命令对吧
实际上它就是在这个里面呢
哎
去执行什么呢?执行这个代码的时候去判断一下你传进来的是不是init
如果是init的话
那我们就。给你做一个什么什么的操作嘛
所以说这样呢
我们以后经常写的代码有这样一个东西啊
就是因为因为前两个参数都是没什么用的啊
参数中的前两位成员都没什么意义啊。一个是note所在的存在那个目录啊
一个note所在的路径
第二个是什么?当前文件
这个没什么意义
因为当前文件和note那个所在的目录我们都可以通过其他方式拿到
那这个时候呢
我们一般常见的写法就是R的V等于什么呢?等于process点啊
V点。这个函数什么意思啊
这个不就是这个不就是JS里面的东西了吗?对不对
它是一个数组
数组里面你看这时候就是语言的能力了
语言它本身就是具备对数组做切分的这样一个能力
对不对?Lies呢?就是说去数组里面删掉前两位元素吧
它是不是第一个参数是大对吧
它还可以传第二个参数吧
是不是还可以传个and
就是说我从哪取到哪
那一般我们这样去写的话
那我们取出来参数是不是就是啊后面的啊console.log1下来
我们把这个up with.to SP
一个数组to宾过后的结果是什么?一个数组to宾过的结果
结果是什么?字串我也知道是读串啊
就是说什么形式啊
我说什么形式
这样打
打印出来是什么东西。应该是零三逗号零四逗号零五吧
是不是有drawing呢?对吧?有drawing哈
这to spring默认是用中文的逗号分割啊
英文的逗号分割起来的啊
那一般我们会根据这样的一些情况去做一些做一些操作
比如说你传过来的诶if什么的二个V点啊
第零个团成员对吧
第零个成员如果等于等于啊。Init啊
那我们就认为你就是啊
用户需要做。初始化就是我们模拟一个类似于NPM的一些操作嘛
对吧
好else。其实不应该写if
我觉得这个地方应该写所是不是更合适一点啊
对吧
写这更合适一点啊
然后把这个代码呢
这些都给他住了啊
都给他住了
然后呢
我们放在上面s Switch Switch一下它啊WHICH0PA
第一个是什么in it是吧?好
然后break
这个没问题吧
啊这个都很简单嘛
这个这个相对来讲的话都很弱哈
好
那我们在NTM里面还有一些常见命令是吧?Int install
对不对啊
还有什么命令NPM
还有什么命令on install。t对吧
然后呢
你到比如说。TBTS是吧
好找回车这样的话
哎
是不是你要安装BOO rap呀
所以说其实NPM它内部呢
就是写了一大波这样的判断
只不过判断的比较完整而已
能理解我意思吧
啊这个呢
是咱们以后在note里面比较常见的一种代码哈
一种代码
那这一块呢
我们介绍了process里面一个2V的一个参数啊
然后呢
还有一些参数
待会我们要着重去讲两个
一个流入啊
那个输出
一个输入啊
一个输出输入
然后呢
我们这先暂停一下啊。
视频
01-全局环境成员