为了账号安全,请及时绑定邮箱和手机立即绑定

进击Node.js基础(二)

Scott 全栈工程师
难度中级
时长 2小时 4分
学习人数
综合评分9.60
153人评价 查看评价
9.8 内容实用
9.4 简洁易懂
9.6 逻辑清晰
  • promise A和A+的不同点
    查看全部
  • Promise实现ajax var getJSON = function(url){ var promise = new Promise(function(resolve,reject){ var client = new XMLHttpRequest(); client.open('GET',url); client.onreadystatechange = handler; client.responseType = 'json'; client.setRequestHeader('Accept','application/json'); client.send(); function handler(){ if(this.readyState !== 4){ return; } if(this.status === 200){ resolve(this.response); }else{ reject(new Error(this.statusText)); } } }); return promise; }; // getJSON('/posts.jons').then(function(json){ consoloe.log(json); },function(error){ console.log('出错了'); });
    查看全部
  • 异步加载图片 Promise function loadImageAsync(url){ return new Promise(function(resolve,reject){ var image = new Image(); image.onload = function(){ resolve(image); }; image.onerror = function(){ reject(new Error('Could not load image at' + url)); }; image.src = url; }); }
    查看全部
  • 利用setTimeout做类似递归算法
    查看全部
  • node.js
    查看全部
    1 采集 收起 来源:Node.js课程前言

    2017-09-08

  • Buffer在nodejs中用来处理二进制的数组(js字符串是用utf-8存储的,处理二进制的能力是很弱的,而网络层对资源的请求,响应等基本以二进制来进行交互)创建一个专门存储二进制的缓存区,并提供了一些方法对这些缓存区的数据做进一步的处理 buffer在nodejs里可全局访问 buffer实例化 1. new Buffer('hello 你好');//以默认编码格式utf-8进行字符转换 2. new Buffer('hello 你好','base64');//将默认编码格式修改为base64 3. var buf = new Buffer(8);//设置缓存区的大小 buf.length; //8 4. var buf = new Buffer('12345678'); console.log(buf) //buf长度为8 5. var buf = new Buffer(7); buf.write('12345678'); console.log(buf) //只要指定了buf长度,超出了都不会被缓存 6. var buf = new Buffer([1,2,3,4]);//经过数组初始化 console.log(buf[1])//值为2. 可以通过下标来访问,如果值为小数,会直接取整数。
    查看全部
  • Buffer.compare(a,b) 返回值是0就表示两个buffer相同
    查看全部
  • push(null)表示结束buffer数组
    查看全部
  • pipe方法会自动监听data和end时间,还可以自动控制后端压力,在客户端链接缓慢时,自动控制流量,并且只有在pipe末端的目标流真正需要数据的时候才会从源头取得数据
    查看全部
  • .write方法返回boolean值 如果流需要等待 'drain' 事件触发才能继续写入数据,这里将返回 false ; 否则返回 true。
    查看全部
  • buffer 方法
    查看全部
  • // 用es6实现 const stream = require('stream') class ReadStream extends stream.Readable { constructor () { super() } _read () { this.push('i') this.push('love') this.push('imooc \n') this.push(null) } } class writStream extends stream.Writable { constructor () { super() } _write (chunk, encode, cb) { console.log(chunk.toString()) cb() } } class TransformStream extends stream.Transform { constructor () { super() } _transform (chunk, encode, cb) { this.push(chunk) cb() } _flush (cb) { this.push('oh yeah') cb() } } const rs = new ReadStream() const ws = new writStream() const ts = new TransformStream() rs.pipe(ts).pipe(ws)
    查看全部
  • poolSize:内容载体的容量。 isBuffe:r判断这个对象是否为Buffer对象,很对时候我们需要判断数据类型,才会有后续的操作。 compare:用来判断两个Buffer对象的相对位置,一般用来做按字符串来排序之类的。 isEncoding:用来判断nodejs是否支持某种编码。 concat:将几个Buffer对象连接创建成一个新的Buffer对象。我们可以手动分配合并后Buffer对象的空间大小,但是空间不够的话,数据会被截断。 byteLength:用来获取指定编码下字符串所占的字节数。由于字符串的编码不同,字符串长度和字节长度也是不同的。
    查看全部
  • https协议是基于SSL/TLS之上的http协议,所有的数据都是在SSL/TLS的封装之上传输的。也就是说,HTTPS协议是在HTTP协议的基础之上添加了SSL/TLS握手以及数据加密传输。简单来说,在nodejs里面,HTTPS就是专门用来处理加密访问的。同事HTTP和HTTPS在这两个模块的API和使用方式几乎是一样的,也就是使用的时候,在搭建HTTPS服务器的时候,需要一个SSL证书。
    查看全部
  • bluebird
    查看全部

举报

0/150
提交
取消
课程须知
本课程是一个系列课程,前导课程是《进击 Node.js 基础(一)》,所以建议小伙伴们学习本课程之前先把它拿下。
老师告诉你能学到什么?
1、了解 Promise 2、横扫 Nodejs API:Buffer、API-Stream

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!