2010-12-16 4 views
0

, как сейчас у меня есть 97 такие же функции, как это:Javascript одна функция для запроса Ajax

function member_requestDetail(member_id){ 
$.ajax({ 
    type: 'POST', 
    url: 'action.php', 
    data: 'action=55&member_id='+member_id, 
    success: function(msg){ 
     if(msg){ 
      var Sresponse=eval('(' + msg + ')'); 
      if(Sresponse.status=='success'){ 
       detailWindow.innerHTML=Sresponse.memberDetails; 
      } 
      else{if(Sresponse.status=='error'){ 
       detailWindowError.innerHTML=Sresponse.errorText; 
      }} 
     } 
     else{ 
      detailWindowError.innerHTML='Error'; 
     } 
    } 
}); 
} 

я бродил, если я что-то вроде этого:

function requestAction(actionID,dataToSend,callback,error_callback){ 
$.ajax({ 
    type: 'POST', 
    url: 'action.php', 
    data: 'action='+actionID+dataToSend, 
    success: function(msg){ 
     if(msg){ 
      var Sresponse=eval('(' + msg + ')'); 
      callback(Sresponse); 
     } 
     else{ 
      error_callback(); 
     } 
    } 
}); 
} 

бы она потеряет скорость или что-то ? я должен делать многопоточность тогда или что-нибудь еще? пример, если функция requestAction получает несколько вызовов в seccond.

желающий кто-нибудь понимает!

спасибо за помощь

+0

Возможно, вы захотите переформатировать свой вопрос; некоторые из кода не отформатированы как блок кода и в результате трудно читать. – Greg 2010-12-16 23:11:57

+2

Всего несколько комментариев, javascript не многопоточен. Тогда `eval`, возможно, не лучший подход для чтения JSON, вместо этого попробуйте` JSON.parse (msg) `. – Mic 2010-12-16 23:14:47

ответ

2

Там не должно быть заметно влияет на производительность в подходе вы очерченные, даже если requestAction() получает несколько вызовов в секунду. Вы только добавляете накладные расходы на один дополнительный вызов функции в стеке.

Смежные вопросы