IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> node.js 基础 -> 正文阅读

[JavaScript知识库]node.js 基础

// 知道CommonJS规定了哪些内容:就是对代码进行模块化的拆分与组合时,需要遵循哪些规则

// ? ?1.使用什么样的语法格式来引用模块

// ? ?2.在模块中使用什么样的语法格式向外暴露成员

// Node.js中模块的根据来源不同分为三大类;三大分类各自是什么

// 1.内置模块(内置模块是由Node.js 官方提供的,例如fs、path、http等)

// 2.自定义模块(用户创建的每个js文件,都是自定义模块)

// 使用require()方法加载其他模块时,会执行被加载模块中的代码

// 3.第三方模块(由第三方开发的模块,并非官方提供的内置模块,也不是用户创建的自定义模块,使用前需要先下载)

//练习:创建主模块(main.js)和功能模块(circle.js),
//在功能模块下创建两个函数,传递半径,
//返回圆的面积或者周长;在主模块下调用暴露的两个函数

main.js 里面代码

const a=require("./circle")
const zc=a.zhouchang(3);
const b=require("./circle01")
const mj=b.mianji(3);
console.log(`周长是${zc} 面积是${mj.toFixed(2)}`)
//mianji
module.exports.mianji=function(r){
return Math.pow(r,2)*Math.PI
}
//zhouchang
module.exports.zhouchang=function(r){
return 2*PI*r
}

在03_1.js文件中引入到同一级目录模块03_2,目录【03_2是个文件夹】中包含index.js,
//在文件中创建函数传递任意两个数字返回总和,暴露该函数;最后在03_1.js
//中调用这个函数

03_1.js

const a =require("./03_2")

03_2文件夹下的02.js

console.log('我先显示')
const a =require("./index.js")
console.log(a.fn(1,3))

03_2文件下的index.js

module.exports.fn=function(a,b){
	return a+b
}

03_2下面的package包配置文件【设定谁先优先,谁就先在03_2文件下优先被找到】

{
"main":"02.js"
}

//(2)记录的包

//1.查询字符串模块(querrystring.js)
//查询字符串:浏览器端向服务端传递参数的一种形式,位于网址,格式
//http://www.codeboy.com:9999/products.html?kw=小米&a=1
//查询字符串模块用于操作查询字符串的工具模块
//parse()将查询字符串转为对象

//例子:
const querystring=require("querystring");
console.log(querystring);
//查询字符串
var str='kw=小米&a=1';
//将查询字符串转为对象,获取传递的值
var obj=querystring.parse(str);//parse 字符串
console.log(obj)//[Object: null prototype] { kw: '小米', a: '1' }
console.log(obj.kw,obj.a)//小米

//例如:获取以下查询字符串中传递的参数值【lid=18&count=2】答案如下:

const querystring=require("querystring");
//查询字符串
var str='lid=18&count=2'
//将查询字符串转为对象,获取传递的值
var obj=querystring.parse(str);//parse 把字符串转为对象
console.log(obj)
console.log(obj.lid,obj.count)//18,2

// 2.IP地址就是互联网上每台计算机的唯一地址:不直观,不便于记忆
//域名和域名服务器
// ip地址和域名是一 一对应的关系,这份对应关系存放在一个叫DNS的电脑里
// 域名服务器就是提供IP地址和域名之间的转换服务的服务器
// 端口号:就像门牌号
// 注意:每个端口号不能同时被多个web服务占用
// 在实际应用中,URL中的80端口可以被省略

//3.URL模块
将URL转换为对象
//var
//str='http://www/codeboy.com:9999/1.html?lid=8#one';
//var obj=new URL(str);
//console.log(obj.search.slice(1));//lid=8

//练习:获取以下URL中传递的参数,打印以下格式:
//’班级编号:xxx 课程名称:xxx‘
//答案详见05nodejs.js//将URL转换为对象
//var
//str='http://www/tmooc.cn:443/web.html?cid=2110&cname=node.js#one';
//var obj=new URL(str);
//var str=obj.search.slice(1);//?cid=2110&cname=node.js
//const querystring=require("querystring");
//var obj=querystring.parse(str);//parse 把字符串转为对象
console.log(obj)
//console.log(`班级编号${obj.cid} ?课程名称:${obj.cname}`)//班级编号2110 ?课程名称:node.js


//4.定时器模块(timer)
//(1)一次定时器:
//开启
//var timer=setTimeout(function(){
//?? ?console.log('bom!!!')
//},3000)
清除
//clearTimeout(timer);

//(2)周期性定时器
//var timer=setInterval(function(){
//console.log('bom!!!')
//},2000)
//?? ?clearInterval(timer)

//(3)立即执行定时器
//console.log(2);
//setImmediate(function(){
//?? ?console.log(3);
//})
//console.log(1);
输出 2 1 3
//所有定时器中的回调函数都是在事件队列中执行

//练习:使用周期定时器,每隔3秒钟打印’嘀嘀嘀‘,打印3次后清楚定时器
//方法一:
var i=0;
var timer=setInterval(function(){
?? ?i++;
?? ?if(i===3)
? ? clearInterval(timer)
?? ?console.log('嘀嘀嘀')
?? ?},3000)
//方法二:
var count=0;
var timer=setInterval(function(){
?? ?console.log('嘀嘀嘀')
?? ??? ?count++;
? ? if(i===3){
?? ?clearInterval(timer);
?? ?}
},1000);

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-24 07:51:19  更:2021-11-24 07:52:43 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/21 4:49:05-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码