面向对象回调

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>面向对象回调</title>
</head>
<body>
面向对象回调
</body>
<script type="text/javascript">
// 做网络请求的对象
var web = {
// 接收: 获得数据后的操作未知?
receive: null,
// 请求: 请求数据
send: function () {
console.log("开始请求数据...");

// 等待一秒: 时间戳应用
var b_time = new Date().getTime(); // 相对1970年毫秒数
var e_time = new Date().getTime();
while(e_time - b_time < 1000) {
// console.log(11);
e_time = new Date().getTime();
}
var data = [1, 2, 3, 4, 5];
console.log("数据请求完毕...");

// 回调
if (web.receive && data) {
web.receive(data);
}
}
}

// web.send();
// console.log(new Date().getTime());

// 如果获取数据后,该做什么
web.receive = function(data) {
console.log(data);
}
// 可以请求数据了
web.send();

// 规定好获得结果后的操作,就可以做请求操作,集体什么时候来处理数据,时间点不需要管

</script>

<script type="text/javascript">
var web = {
send: function (callback=null) {
console.log("开始请求数据...");

var b_time = new Date().getTime();
var e_time = new Date().getTime();
while(e_time - b_time < 1000) {
// console.log(11);
e_time = new Date().getTime();
}
var data = [1, 2, 3, 4, 5];
console.log("数据请求完毕...");

if (callback && data) {
callback(data);
}
}
}

web.send(function(data) {
console.log(data);
});


</script>
<script type="text/javascript">
function Web () {
this.send = function (callback=null) {
console.log("开始请求数据...");

var b_time = new Date().getTime();
var e_time = new Date().getTime();
while(e_time - b_time < 1000) {
// console.log(11);
e_time = new Date().getTime();
}
var data = [1, 2, 3, 4, 5];
console.log("数据请求完毕...");

if (callback && data) {
callback(data);
}
}
}

var web = new Web();
web.send(function(data) {
console.log(">>>>>", data);
})
</script>
</html>

posted @ 2018-10-17 17:47  不沉之月  阅读(192)  评论(0编辑  收藏  举报