寫了個函數(shù),輸入三個參數(shù),前兩個參數(shù)傳給url, 通過get請求,獲取發(fā)票信息對象,第三個參數(shù)判斷要獲取的信息,從然后返回對應(yīng)的值。
同事點撥,這樣寫效率低,直接返回對象,用的時候現(xiàn)取,不需要在函數(shù)中返回值。果然溝通使人進步。 改進后的代碼:
function getInvocieInfo(user_id, taskid) {
var invoiceObj = {};
$.ajax({
type: 'GET',
dataType: 'json',
url: 'http://180ly66419.iok.la:5000/api/detect_in?1=1&user_id=' + user_id + '&task_id=' + taskid,
async: false,
timeout: 5,
data: {
q: "select * from json where url=\"http://www.w3dev.cn/json.asp\"",
format: "json"
},
success: function (response) {
responseData = JSON.stringify(response);
invoiceObj = eval('(' + responseData + ')');
},
error: function () {
alert('服務(wù)器異常,獲取發(fā)票信息失??!');
}
});
return invoiceObj
}
使用的時候調(diào)用:
var inoviceObj = getInvocieInfo(user_id, taskList[i]);
invoiceInfo["invoiceTextID"] = inoviceObj.data["invoice_code"];
invoiceInfo["invoiceTextNum"] = inoviceObj.data["invoice_num"];
修改前
function getInvocieInfo(user_id, taskid, textInvocetype) {
$.ajax({
type: 'GET',
dataType: 'json',
url: 'http://180ly66419.iok.la:5000/api/detect_in?1=1&user_id=' + user_id + '&task_id=' + taskid,
async: false,
timeout: 5,
data: {
q: "select * from json where url=\"http://www.w3dev.cn/json.asp\"",
format: "json"
},
success: function (response) {
responseData = JSON.stringify(response);
var invoiceObj = eval('(' + responseData + ')');
invoiceID = invoiceObj.data['invoice_code'];
invoiceNo = invoiceObj.data['invoice_num'];
},
error: function () {
alert('服務(wù)器異常,獲取發(fā)票信息失敗!');
}
});
if (textInvocetype == "textInvoiceNum") {
return invoiceNo;
}
else if (textInvocetype == "textInvoiceID") {
return invoiceID;
}
}