javascript - JSON 上的 SQLike 查询返回 3996 个对象

标签 javascript json sqlike

我正在尝试查询 JSON 对象以确定用户名。但是,当我运行 SQLike 时,我返回了 3996 个对象,其中没有一个与我要求返回的正确参数匹配。任何人都可以指出我哪里出了问题,以及为什么我收到 3996 个返回的对象,此外,我如何将其删除以仅返回用户名?

user.json

[
    {
        "id":1,
        "fName": "Sam",
        "lName": "Street",
        "username": "sam",
        "password": "123"
    },
    {
        "id":2,
        "fName": "Matt",
        "lName": "Mantle",
        "username": "matt",
        "password": "123"
    },
    {
        "id":3,
        "fName": "Dev",
        "lName": "Mode",
        "username": "dev",
        "password": "123"
    }
]

我在提交表单时调用的 JavaScript

$("#login_form").submit(function (e) {
    // prevent default action
    e.preventDefault();
    var form = $(this);
    var username = form.find("#username").val();
    var password = form.find("#password").val();

    // need to pass this as generic function when finished
    var userData = $.ajax({
        async: false,
        url: 'user.json',
        type: "GET",
        dataType: "json",
        success: function (data) {
            console.log(data);
        }
    });

    var sel = SQLike.q(
        {
            Select: ['*'],
            From: userData,
            Where: function () { return this.userData = username }
        }
    )
    console.log(sel);
});

最佳答案

return this.userData = username
                    ^^^

= 是赋值,由于您要返回一个赋值,因此它将为 true,并且将返回每条记录。

return this.userData === username;
                     ^^^

关于javascript - JSON 上的 SQLike 查询返回 3996 个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21890912/

相关文章:

javascript - 使用 javascript onchange 的下拉菜单不起作用

javascript - 如何生成带有转义字符的json字符串

javascript - 使用 Javascript 将结构化字符串转换为数组

jquery - 在 ASP.NET 中使用通用处理程序对 jQuery AJAX 调用进行故障排除

javascript - CORS 发布请求失败

javascript - 按两个输入值之间的范围过滤元素的菜单

JavaScript/NodeJS : Invoking object methods inside the same object: why is "this." mandatory?