Javascript 面向对象ajax避免代码重复
例如,我需要在用户交互时发送多个数据。例如,对于上面的代码,它用于将数据插入后端。但我还有其他操作,如更新和删除,以及许多其他字段。我计划对上面的代码进行OOP以重用它,但它与函数不同。我期待着这样的事情:Javascript 面向对象ajax避免代码重复,javascript,php,oop,jquery,Javascript,Php,Oop,Jquery,例如,我需要在用户交互时发送多个数据。例如,对于上面的代码,它用于将数据插入后端。但我还有其他操作,如更新和删除,以及许多其他字段。我计划对上面的代码进行OOP以重用它,但它与函数不同。我期待着这样的事情: var ajaxquery= $.ajax({ url: "backend.php", type: "POST", data: {data:data},
var ajaxquery= $.ajax({
url: "backend.php",
type: "POST",
data: {data:data},
dataType: "text"
});
可能吗?您可以使用闭包实现这一点:
var insert = new ajaxquery(url,data,callback);
var delete = new ajaxquery(url,data,callback);
您可以使用闭包实现这一点:
var insert = new ajaxquery(url,data,callback);
var delete = new ajaxquery(url,data,callback);
你可以把它放在一个所有数据变量都是参数的函数中。你可以把它放在一个所有数据变量都是参数的函数中。这里有两个参数,var insert=ajaxquery(url,callback);但是你在这里传递的是1而不是2:insert(“somedata”);为什么?因为ajaxQuery将返回一个函数,所以这个函数被分配给insert变量,并且它只接受一个参数。我希望现在更清楚了,我明白了。还有一个问题。为什么不使用新关键字?在这种情况下,您没有使用任何对象吗?这里有2个参数,var insert=ajaxquery(url,callback);但是你在这里传递的是1而不是2:insert(“somedata”);为什么?因为ajaxQuery将返回一个函数,所以这个函数被分配给insert变量,并且它只接受一个参数。我希望现在更清楚了,我明白了。还有一个问题。为什么不使用新关键字?在这种情况下你没有使用任何对象?