什么是node

  • Javascript可以在浏览器运行, node可以让javascript在浏览器之外运行
  • 可以用来做本地运行的软件/网络服务器/游戏等等

记得安装vs code里面力扣插件需要先安装node.js, 但我不知道node是做什么的

Last login: Fri Sep 22 13:34:30 on ttys003
l@away ~ % node
zsh: command not found: node

本地还没有安装node, 下面开始安装

安装node

  • 登陆node官网下载
  • 选择左边稳定版本

  • 安装pkg️

    continue- continue- agree- continue- install

  • 安装完成

    终端terminal里面输入node可以看到版本号/node -v
  • ctrl+c两次/ctrl+d/.exit退出
l@away ~ % node
Welcome to Node.js v18.18.0.
Type ".help" for more information.
>
>
>
>
>
(To exit, press Ctrl+C again or Ctrl+D or type .exit)
>

Node REPL

  • 和浏览器中的console界面类似
l@away ~ % node
Welcome to Node.js v18.18.0.
Type ".help" for more information.
> .help
.break Sometimes you get stuck, this gets you out
.clear Alias for .break
.editor Enter editor mode
.exit Exit the REPL
.help Print this help message
.load Load JS from a file into the REPL session
.save Save all evaluated commands in this REPL session to a file Press Ctrl+C to abort current expression, Ctrl+D to exit the REPL
> 1 + 2
3
> "hello" + "world"
'helloworld'

global scope可以输入global查看

使用global下面的function

> setTimeout(() => {console.log("Heloo")}, 3000)
Timeout {
_idleTimeout: 3000,
_idlePrev: [TimersList],
_idleNext: [TimersList],
_idleStart: 398982,
_onTimeout: [Function (anonymous)],
_timerArgs: undefined,
_repeat: null,
_destroyed: false,
[Symbol(refed)]: true,
[Symbol(kHasPrimitive)]: false,
[Symbol(asyncId)]: 365,
[Symbol(triggerId)]: 6
}
  • 和客户端JS区别

    • node不是在浏览器上运行, 不能对浏览器中的window/document/DOM API进行操作
    • 可以和操作系统/文件系统进行交互

如何运行一个脚本

  • terminal新建文件

    touch firstTest.js
  • vs code编辑此文件
for(let i = 0; i < 10; i++) {
console.log("hello from first script!!")
}
  • terminal通过命令行node filename运行
l@away code % touch firstTest.js
l@away code % node firstTest.js
hello from first script!!
hello from first script!!
hello from first script!!
hello from first script!!
hello from first script!!
hello from first script!!
hello from first script!!
hello from first script!!
hello from first script!!
hello from first script!!
l@away code %

命令行传入参数

  • vs code 编辑脚本文件

    通过process.argv.slice(2)获得参数的list

    其中argv的第一个'/usr/local/bin/node'是运行路径, 第二个'/Users/code/args.js'是运行的脚本文件所在路径
console.log("hello from args", process.argv);
const personList = process.argv.slice(2);
for (p of personList) {
console.log(`hello, ${p}`);
}
  • terminal运行时node filename arg1 arg2 aeg3传入参数
l@away code % node args.js person1 person2 person3
hello from args [
'/usr/local/bin/node',
'/Users/code/args.js',
'person1',
'person2',
'person3'
]
hello, person1
hello, person2
hello, person3

Node学习第一步 | 简介及安装的更多相关文章

  1. Java 学习第一步-JDK安装和Java环境变量配置

    Java学习第一步——JDK安装及Java环境变量配置 [原文]  2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋 ...

  2. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  3. Java学习第一步: Win7配置JDK环境

    转摘"专注JavaWeb开发":http://www.javaweb1024.com/java/Javajichu/2015/03/02/353.html 下载JDK并安装到本机  ...

  4. Qt 学习第一步 做计划和确定目标

    接下来開始一步步深入学习Qt. 学习的第一步是整理资料,也就是找书和sample. 逛了一些论坛,推荐以下3本书 1> C++ GUI programming with Qt 4(2nd Edi ...

  5. Struts2 学习第一步准备工作

    第一步:安装下载MyEclispe10 对于MyEclispe的下载安装就不再详述了. 第二步:下载Struts-2.3.15 Struts-2.3.15下载地址: http://struts.apa ...

  6. java学习第一步,使用IntelliJ IDEA编写自己的第一个java程序

    首先下载java的jdk,然后说一下IDEA的配置 IntelliJ IDEA目前公认的最好的java开发工具,不过一般的学校的教学还是使用eclipse来进行java的开发.所以老师一般只会教你如何 ...

  7. caffe windows 学习第一步:编译和安装(vs2012+win 64)

    没有GPU,没有linux, 只好装caffe的windows版本了. 我的系统是win10(64位),vs 2012版本,其它什么都没有装,因此会需要一切的依赖库. 其实操作系统只要是64位就行了, ...

  8. GIT学习之路第一天 简介及其安装

    本文参考廖雪峰老师的博客进行总结,完整学习请转廖雪峰博客 Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一). Git有什么特点?简单来说就是:高端大气上档次! 那什么是版本控制 ...

  9. Java学习第一步——JDK安装及Java环境变量配置

    Java作为当下很主流的编程语言,学习Java的朋友也越来越多了,作为一门面向对象的编程语言,Java也有着安全.高 效等诸多有点.从TIOBE(TIOBE排行榜是根据互联网上有经验的程序员.课程和第 ...

  10. Linux学习第一步(虚拟机的和镜像文件的安装)

    一.安装虚拟机(本文以vmware workstation 12为例) 1.在网上所有虚拟机并下载. 2.找到下载文件安装好 3.一直下一步 4.接下来的就是选择安装的目录了,当然如果你的电脑c盘够大 ...

随机推荐

  1. [ARM汇编]计算机原理与数制基础—1.1.2 二进制与十进制数制转换

    在计算机中,我们通常使用二进制数制来表示数据,因为计算机的基本电平只有两种状态:高电平(通常表示为 1)和低电平(通常表示为 0).而在我们的日常生活中,我们习惯使用十进制数制.为了方便理解,我们需要 ...

  2. [ARM汇编]计算机原理与数制基础—1.1.3 二进制补码

    在计算机中,为了表示有符号整数(即正数和负数),通常采用二进制补码表示法.二进制补码不仅可以表示负数,还能简化计算机的加法和减法运算.接下来,我们将介绍二进制补码的概念及其计算方法. 原码.反码和补码 ...

  3. 从AWS中学习如何使用AmazonDynamoDB存储卷

    目录 <35. <从 AWS 中学习如何使用 Amazon DynamoDB 存储卷>>:从 AWS 中学习如何使用 Amazon DynamoDB 存储卷 随着云计算技术的迅 ...

  4. Transaction rolled back because it has been marked as rollback-only大概问题及解决方法

    Transaction rolled back because it has been marked as rollback-only 问题:前几天遇到一个问题,代码没有抛出我想要的带自定义提示消息的 ...

  5. harbor 搭建和部署

    Docker官方的Docker Registry镜像,可以用来储存和分发Docker镜像.不过实在不昨的,仅仅能储存和分发镜像,也不提供UI,你还得自己找一个过时的UI搭建,受限制于Docker Re ...

  6. List 接口及其常用方法

    List 接口基本介绍 List接口是Collection接口的子接口,其主要特点如下: List中元素有序,是按照元素的插入顺序进行排序的.每个元素都有一个与之关联的整数型索引(索引从 0 开始), ...

  7. P7561[JOISC 2021 Day2] 道路の建設案 (Road Construction) 题解

    P7561[JOISC 2021 Day2] 道路の建設案 (Road Construction) 题解 题目描述 JOI 国是一个 \(x\times y\) 的二维平面,王国里有 \(n\) 个城 ...

  8. Swift函数调用方式浅析

    函数的调用机制   函数的调用机制是在函数调用时通过那种路径走到最终调用函数地址的机制. 在编程语言中,函数的调用机制有三种 1.静态调用:编译期就确定了函数内存地址,执行效率最高,还可以使用编译器优 ...

  9. curl 调用url时带有&符号被截断

    转载请注明出处: 用curl命令在服务器上调试接口时,一直调试不通,执行如下: 在用curl 执行之后,返回了一个 作业id [ 1 ] 23926 ; 并打印出了 调用执行的url,发现 真正执行的 ...

  10. python:导入库、模块失败

    一般发生在程序开始部分: from pymodbus.client.sync import ModbusSerialClient from pymodbus.payload import Binary ...