node.js(一)

  • A+
所属分类:Web前端
摘要

1、随机产生33位数字:2、随机取6位数字;存放位置:当循环完一次之后,将当前arr数组对应的索引删除,不会出现重复的元素

1、随机产生33位数字:

var arr=[];  for(var i=1;i<=33;i++){  arr.push(i);  }

2、随机取6位数字;

存放位置:当循环完一次之后,将当前arr数组对应的索引删除,不会出现重复的元素

var newArr=[];  for(var i=0;i<6;i++){  var num=Math.floor(Math.random()*arr.length);  newArr.push(arr[num]);  arr.splice(num,1)  }

上面会得到无序的不重复的6位数

进行排序:

newArr=newArr.sort((a,b)=>a-b);//ES6箭头函数

 

Math对象:

PI   Π值

abs()  取绝对值

floor()   向下取整

ceil()   向上取整

round()   进行四舍五入

max()    两数取最大

min()    两数取最小

pow(x,y)   取x

random()取[0,1)之间的数

ES6 

块级作用域  let  {}

箭头函数   ()=>{}

ES6允许为形参设置默认值,如果没有传递实参,则自动调用形参的默认值

 function add (num1, num2=7){   }

模板字符串:``  在这中间可以写任意形式的代码  ${JS语法}

NODEJS

JS运行在浏览器端,存在兼容性问题,NODEJS运行在服务器,不存在兼容性

两者都有内置对象、自定义对象、宿主对象(根据执行环境不同)

JS用于网页中的交互效果,NODEJS用于服务器端操作,例如:创建web服务器、操作数据库...

NODEJS的执行方式

1. 脚本模式  :

在当前文件下按住shift鼠标右击 ,打开powershell  执行node 文件名.js

2. 交互模式:

在终端输入 node 回车进入交互模式:两次ctrl+c或者输入 .exit  退出交互模式

全局对象:NODEJS:global

在交互模式下,声明的变量和创建的函数都是全局对象下的,可以使用global来访问,例如 var a=1;  global.a

node.js(一)

 

 

在脚本模式下,文件中声明的变量和创建的函数不是全局对象下的,不能使用global来访问 

JS:window

node.js(一)

(1)

global.console.log(1);打印日志

global.console.info()打印消息;

global.console,warn() 打印警告;

global.console.error()打印错误

global.console.time('自定义字符串');   开始计时

global.console.timeEnd('自定义字符串');  结束计时

 在浏览器控制台:

node.js(一)

 

 

 在node的交互模式下:

node.js(一)

 

 

 (2)node交互模式下的process

当前计算机的进程:

process.arch 查看当前CPU架构  X64

process.platform  查看当前的操作系统 w32

process.env 查看当前的环境变量有哪些

process.version 查看当前nodejs版本号

process.pid 查看当前进行的编号

process.kill(编号)  杀死某个编号的进程

node.js(一)

 

 

 (3)Buffer

缓冲区:在内存中存储数据的区域,存储网络传输时的资源/

创建Buffer

  var buf=Buffer.alloc(5,"abcde");

将buffer数据转为普通字符串

buf.toString()

例如;创建两个buffer区域,分别存储两个数字,计算两个数字相加:

node.js(一)

 

 

 (5)模块系统:

模块是一个预定义好的功能体,在nodejs下,每一个文件都是一个模块。

 在NODEJS下分为自定义模块、核心模块(官方提供)、第三方模块

在NODEJS下,一个文件就是一个模块,文件中的代码默认是被一个构造函数所包含。

以下红色的代码都是nodejs自动为每个文件添加的。

function(exports,require,module,_filename,_dirname){    程序编写的代码  })

_filename() 当前文件的完整路径和文件名称;

_dirname 当前文件的完整路径;

require:是一个函数,用于引入模块  require('./07_2.js')

module 指当前模块;module.exports  当前模块导出的对象(公开的内容),可以供其它的模块使用的属性和方法。

exports  等价于 module.exports

 

node.js(一)

 

 

 练习:创建两个模块 main.js(主模块),circle.js(功能模块);在功能模块中创建两个函数,传递1个参数作为半径,分别获取圆的周长和面积,导出(公开)两个函数;在主模块中引入功能模块,调用两个函数。

node.js(一)

 

 

 

 circle.js

function  zhouchang(r){   return 2*Math.PI*r;  }  function  mianji(r){  return Math.PI*Math.pow(r,2);  } module.exports.mianji=mianji;  module.exports.zhouchang=zhouchang;

main.js

console.log(circle); console.log(circle.zhouchang(5).toFixed(1)); console.log(circle.mianji(5).toFixed(1));

node.js(一)