需要js 遠程調用服務端方法。new Client(url).xxx().首先有個url獲取服務端可用方法名 格式如下["get_product_list","get_categroy_list"]function Client (url) {//請求url 返回["get_product_list","get_categroy_list"] var array_method_list = ["get_product_list","get_categroy_list"] ; for (var v of array_method_list){ this[v] = v;//此處只是把函數名進行賦值 本地是沒有這個方法的 如何調用呢 } }想到用eval這個方法了,可是十分討厭這個方法,有什么好辦法不用eval()?或者更簡潔的方式去寫function Client(url) { // url AJAX獲得array_method_list var array_method_list; var obj = new Object; obj.invoke = function(method_name, argument_list) { // AJAX方法獲取數據 var called_function_name = "on_"+method_name+"_finished"; } for (method_name in array_method_list) { eval("obj."+method_name+"=function(){this.invoke('"+method_name+"', arguments);}"); } return obj;}
js 遠程調用方法
牧羊人nacy
2018-12-14 19:10:29