可以参考下,没有验证浏览器的适用性。
<html>
<head>
<title>shuju</title>
<script>
// function fn1() {
// var ajax = new XMLHttpRequest()
// ajax.open('GET', 'http://127.0.0.1:5000', true)
// ajax.send()
// ajax.onreadystatechange = () => {
// if (ajax.readyState === 4 && ajax.status === 200) {
// datalists = ajax.response
// console.log('你好')
// return datalists
// DataList = JSON.parse(ajax.response)
// }
// }
// }
// 例一 callback 形式
// function fn1(callback) {
// var ajax = new XMLHttpRequest()
// ajax.open('GET', 'http://127.0.0.1:5000', true)
// ajax.send()
// ajax.onreadystatechange = () => {
// if (ajax.readyState === 4 && ajax.status === 200) {
// datalists = ajax.response
// console.log('你好')
// // return datalists
// callback(datalists);
// DataList = JSON.parse(ajax.response)
// }
// }
// }
// 例二 Promise 的形式
function fn1() {
return new Promise((resolve) => {
var ajax = new XMLHttpRequest()
ajax.open('GET', 'http://127.0.0.1:5000', true)
ajax.send()
ajax.onreadystatechange = () => {
if (ajax.readyState === 4 && ajax.status === 200) {
datalists = ajax.response
console.log('你好')
// return datalists
resolve(datalists);
DataList = JSON.parse(ajax.response)
}
}
})
}
</script>
</head>
<body>
<script type="text/javascript">
// var shujuju = fn1()
// console.log(shujuju)
// 例一
// fn1((r) => {
// console.log(r);
// })
// 例二
fn1().then(r => {
console.log(r);
})
</script>
</body>
</html>