websocket

seajs、requirejs:
1.在js文件里(模块里)
define(function(require, exports, module){
require('2.js'); <--难点
});

2.在html文件里
seajs.use('lib/1.js', function(mod){});

------------------------------------------------------
generator的本质:
语法糖

C++运算符重载:
arr1+arr2 ==>arr1.concat(arr2)

function *show(){
let a = 12;
let data1 = yield $.ajax('data/1.txt');

let b =5;
let data2 = yield $.ajax('data/2.txt');
}

🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽🔽

function show(){
let a = 12;
$.ajax('data/1.txt').then(res=>{
data1 = res;
let b = 5;
$.ajax('data/2.txt').then(res=>{
let data2 = res;
});
});
}

Promise的本质:状态机
1.当状态改变的时候--调用之前挂起的then队列
2.then的时候直接执行对应的函数,并且参数给人家

-------------------------------------------------------
WebSocket:
1.双工
2.HTML5的
3.用的非常广


socket.io

浏览器<-->服务器 http

WebSocket 协议是基于http的

sock.emit 发送
sock.on 接收

-------------------------------------------------------
WebSocket -- socket.io

1.服务端
a.先有http服务
let server = http.createServer();
server.listen(4311);
b.再有ws服务
let wsServer = io.listen(server);
wsServer.on('connection', function(sock){
sock
});

2.浏览器
a.引库
<script src="xxxx/socket.io/socket.io.js"></script>

b.连接
let sock = io.connet('ws://xxxx/');

---------------------------------------------------
sock.emit('名字', 参数...)
sock.on('名字', function(参数...){

});

 

posted @ 2019-07-29 09:27  菜菜123521  阅读(116)  评论(0)    收藏  举报