一、Node.js简介

1. Node是什么

1)浏览器内核有两个引擎:渲染引擎(渲染html、css)、JavaScript引擎(运行JavaScript代码)

2)Node是独立于浏览器的JavaScript的运行环境,通常将Node称为JavaScript的服务器运行环境

3)Node相当于运行JavaScript程序的虚拟机

4)是JavaScript的工具库。Node.js内部采用Google公司的V8引擎

​2. 使用Node的原因:有了Node后JavaScript就正式成为一个工程化的语言

二、安装Node.js

1. 环境变量的设置

​       此电脑 --属性  -- 高级系统设置 ---环境变量 ---- 系统变量  --- path ---node.js ---依次确定,若删除了,就将node地址复制到path下面,然后在地址后面加个\。

2. 设置环境变量目的:在自定义的目录下运行程序是,操作系统可以找到相应的指令

三、ES6中的模块

1. 模块化管理的方式

​       ES6的方式:一个.js文件就是一个模块。采用”module”方式管理。即用export导出、用import….from导入

​       Node的方式:采用“CommonJS”方式。即module.exports = ‘变量名’导出,用require导入

2. 文件名:主文件名.扩展名

​ .扩展名的作用是:指定文件的类型

​ .mp3:音频文件 mpeg-3

​ .mp4:视频文件 mpeg-4

​ .jpg .png

​ 3. 模块化的操作:导出(export)、导入(import)

注意:ES6中使用模块化的环境配置

第一步:初始化环境,在存放js文件的文件夹下执行:npm init -y (生成package.json文件。-y是参数,可不写)

第二步:在package.json文件中加入:“type”:”module” (表示采用的是ES6的模块化管理方式)

{"name": "demo","version": "1.0.0","description": "","main": "index.js","scripts": {"test": "echo \"Error: no test specified\" && exit 1"},"keywords": [],"author": "","license": "ISC","type": "module"
}

4. 导出 / 导入 一个变量

//在t1.js文件导出变量(将user暴露出来,其他模块就可以使用)
export let userName = '武则天'
//exam.js导入变量
import { userName  } from "./t1.js";
console.log(userName)

5. 导出 / 导入 多个变量

//在t1.js中导出多个变量
let userName = '武则天'
let userAge = 75
let userFun = function(){console.log('Name:',userName)console.log('Age:',userAge)
}
export { userName,userAge,userFun }
//在exam.js中导入变量
import { userName,userAge,userFun  } from "./t1.js"; //导入时必须带文件的扩展名(后缀)
console.log(userName)
console.log(userAge)
userFun()

6. 导入变量时重命名:使用as

//在t1.js中导出多个变量
let userName = '武则天'
let userAge = 75
let userFun = function(){console.log('Name:',userName)console.log('Age:',userAge)
}
export { userName,userAge,userFun }
//在exam.js中导入变量
import { userName as myname,userAge as myage ,userFun as ftp  } from "./t1.js";
console.log(myname)
console.log(myage)
ftp()

7. 导入 / 导出整个模块:使用*统配符,表示导入所有

import * as info from "./export.js" //将export.js文件全部导入,并重命名为info
console.log("--学校:",info.school)
console.log("--地址:",info.address)

8. 默认导出(export default):

1)一个模块只能有一个默认导出,对于默认导出,导入的名称可以和导出的名称不一致。

//export.js文件默认导出
let school = "木叶忍者学校"
let address = "木叶村"
const obj ={school,address
}
export default obj
//import.js文件中导入
import obj from "./export.js"
console.log("--学校:",obj.school)
console.log("--地址:",obj.address)

2)混合导出

//在export.js文件中使用默认导出:导出一个函数
export default function(){console.log('愿者上钩')
}
//普通导出:导出变量
export let myName = '姜子牙'
//在import.js文件中导入:默认的导出不能用{},普通导出的变量要用{}
import myFun,{myName } from './export.js'
console.log(myName+'钓鱼')
myFun()

3)重命名export和import

如果导入的多个文件中,变量名字相同,即会产生命名冲突的问题,为了解决该问题,ES6为提供了重命名的方法,可以这样做:/******************************test1.js**********************/export let myName="我来自test1.js";/******************************test2.js**********************/export let myName="我来自test2.js";/******************************index.js**********************/import {myName as name1} from "./test1.js";import {myName as name2} from "./test2.js";console.log(name1);console.log(name2);

Node.js简介、安装Node.js、ES6中的模块相关推荐

  1. Windows下完全卸载node.js并安装node.js的多版本管理工具nvm-windows

    前言 由于高版本的node.js导致gulp执行build命令失败,我需要在Windows下卸载掉已有的node.js并安装一个多版本管理工具nvm-windows,方便切换不同版本的node.js. ...

  2. 对应node版本_安装Node.js教程

    小编首先下载Node.js,首先打开浏览器,然后输入https://nodejs.org/en/,进入nodejs官网,然后按照下图中红色箭头指示步骤2,这个是nodejs8.12版本,下面Recom ...

  3. 【 Node 】 ubuntu安装node版本

    安装最新版本 ubuntu16 sudo apt-get install nodejs sudo apt install nodejs-legacy sudo apt install npm ubun ...

  4. spring5下载安装(等于向IDE中导入模块)

    下载spring5 spring 打开官网>projects>Spring Framworks # 连续两步到最下 release>org>springframework> ...

  5. Ubuntu(WSL)中Node.js环境安装

    Node.js环境安装 1 NVM安装 1.1 NVM的Github安装方法 1.2 NVM的Gitee(码云)安装 1.2.1 NVM源代码下载 1.2.2 nvm安装 1.3 NVM国内源设置 1 ...

  6. 如何在Linux上安装Node.js

    Node.js简介 Node.js是一个基于JavaScript的开源平台,用于开发服务器端和网络应用程序. Node.js是跨平台的,因此以Node.js编写的应用程序可以在任何平台上运行.它是建立 ...

  7. P01:Next.js简介和创建项目

    React服务端渲染框架Next.js Next.js 简介 创建Next.js项目 一.手动创建Next.js项目 建立文件夹 安装所需要的依赖包 增加快捷命令 创建pages文件夹和文件 二.cr ...

  8. Vue.js简介和入门使用

    vuejs 简介 Vue.js (vuejs.org) 渐进式 JavaScript 框架 vuejs 是基于MVVM 思想的框架 vuejs 是以数据驱动为主的框架 vuejs 是以组件化进行开发的 ...

  9. Webstorm安装node

    1.安装webstorm 1 1.1文件webstorm 1 1.2安装webstorm 1 1.3激活webstorm 1 1. 安装node 2 2.1文件node 2 2.2安装node 2 2 ...

最新文章

  1. 前端攻城狮学习笔记七:常见前端面试题之HTML/CSS部分(二)
  2. 【转】匈牙利算法理解
  3. react-router-dom@6获取路由传参
  4. 关于Spring的事务Transactional,锁同步,并发线程
  5. LeetCode 897. 递增顺序查找树(中序遍历)
  6. 用matlab绘制中国海岸线,matlab显示全球海岸线
  7. 走在WCF学习的路上---印在脑子里的点点滴滴(两种元数据交换方式的优缺点)...
  8. Linux -chattr -隐藏权限(附加权限)
  9. MySQL8.0数据库配置注意事项
  10. python3的包(package)在centos中的安装地址
  11. linux下grub的设置密码,grub设置密码
  12. 网站性能提高之国外空间
  13. 印度 “新能源汽车市场” 是否坚挺!
  14. 技术经理成长复盘-激励
  15. 用python的opencv画出一棵树的骨架
  16. keras神经风格迁移_知识分享 | 神经风格迁移-把每一张图片都变成自己喜欢的样子...
  17. Redis集群的设计与使用
  18. JavaScript DOM操作案例点击按钮修改ul背景颜色
  19. python主函数调用格式_Python入门基础中怎么定义函数,函数调用,函数传递参数...
  20. Android Menu 之 optionsMenu 详解

热门文章

  1. vscode 程序员鼓励师_把软萌程序猿鼓励师装进 VScode 里?GitHub 2.5k 星标,爱上写代码...
  2. Java使用钉钉定时发送邮件到企业邮箱
  3. 安徽省立法促进信息化健康发展 强化公众信息安全保障
  4. BHO的创建-Window7 VS2010
  5. java actioncontext_Action访问ActionContext | 学步园
  6. 关于定义域有界性的三种判断
  7. JS 使用split分割但保留分隔符返回数组
  8. 【操作系统】-- 银行家算法
  9. 我被大老板们钟爱的五大要素 蒋继平
  10. Web 3D引擎闲谈