如何在Javascript中检查哪个变量被发送到函数

如何在Javascript中检查哪个变量被发送到函数,javascript,mongodb,Javascript,Mongodb,我有一个Javascript AJAX函数,可以将一些数据(发送到MongoDB数据库)发送到 . 该数据库仅包含一个文档,其中记录了已回答问题的总数以及正确回答问题的数量 函数可以接受这些数字中的任何一个(在代码中的不同位置更新),但如何检查它在函数中的数字?它看起来像这样: function updateQuestionsProgress(number) { //TODO Check which of the two numbers is sent $.ajax({ type: "P

我有一个Javascript AJAX函数,可以将一些数据(发送到MongoDB数据库)发送到 . 该数据库仅包含一个文档,其中记录了已回答问题的总数以及正确回答问题的数量

函数可以接受这些数字中的任何一个(在代码中的不同位置更新),但如何检查它在函数中的数字?它看起来像这样:

function updateQuestionsProgress(number) {
//TODO Check which of the two numbers is sent
$.ajax({
    type: "POST",
    url: "/statistics/quick_test",
    data : theNumber,

    error:function(msg, string){
        console.log(msg);
    },

    success:function(data){
        alert("sd");}
    });
知道它是哪个数字,我就可以在URL中间件中相应地更新它


我只是做两个不同的函数好吗?如果您有一个非常大的数据库,并且您只想更新文档的一部分,这似乎非常不方便。

您需要的是函数的调用者告诉您它是哪个数字。 您可以发送一个字符串、一个bool标志(因为它只有两个选项)或一个对象

function updateQuestionsProgress(dataObj) {
//TODO Check which of the two numbers is sent
$.ajax({
    type: "POST",
    url: "/statistics/quick_test",
    data : dataObj,

调用
updateQuestionsProgress(dataObj)
时,可以将任何对象传递给函数。E.x.
var dataObj={“答案”:5,“正确答案”:3}
以及您需要的任何其他信息。

??这是什么意思?您已经将
number
设置为参数。你不能检查一下吗?根本不清楚你在问什么。数字可以是x或y。我想根据号码做不同的事情。我想检查发送到函数中的变量的名称,或者类似的内容。你不能这样做。所以我需要两个不同的函数?假设我的数据库文档有10个不同的值,它们都在不同的位置逐个更新。然后需要10个不同的函数?呃,如果(number==x){}或者如果(number==y){}是的,我开始用一个对象来做这个。看起来很笨重,尤其是如果有更多的选项,你的意思是你正在向函数发送一个像
var obj={“answers”:7}
这样的对象吗。因为它可以扩展。最后,您将发送一个post请求-它可能包含许多键和值。使用对象方法可能是最好的解决方案。