class Ajax { // 请求方式 不一样 // 请求地址 不一样 // 请求参数 不一样 constructor() { this.ajax = new XMLHttpRequest() } // { url: '请求地址', data: {} //请求参数 } get (params) { var str = "" for (const key in params.data) { str += `&${key}=${params.data[key]}` } str = str.replace("&", "?") this.ajax.open("GET", params.url + str); this.ajax.send(); this.statechange(params) } post () { this.open("POST", "http://127.0.0.1/index.php") } statechange (params) { this.ajax.onreadystatechange = () => { if (this.ajax.readyState == 4) { if (this.ajax.status == 200) { var data = JSON.parse(this.ajax.responseText) switch (data.status) { case 200: params.success(data.result) break; case 404: alert(data.msg) throw new Error(data.msg) break; } // } else { params.error(this.ajax) } } } } } var ajax = new Ajax()