Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用运算符验证jQuery中是否存在数组?_Jquery_Html - Fatal编程技术网

使用运算符验证jQuery中是否存在数组?

使用运算符验证jQuery中是否存在数组?,jquery,html,Jquery,Html,我有一个来自ws的数组响应,我在响应中寻找一个精确的对象,所以当找不到该对象时,jQuery会给我一个错误。我试图用| |和?:运算符进行验证,但它不尊重它,并且它继续给我错误 这是我的回答的一个例子: [{ "vehicle_id": 771004720190304, "schema_id": 301, "language_id": 18, "content": "04 mar. 2019" }, {

我有一个来自ws的数组响应,我在响应中寻找一个精确的对象,所以当找不到该对象时,jQuery会给我一个错误。我试图用| |和?:运算符进行验证,但它不尊重它,并且它继续给我错误

这是我的回答的一个例子:

    [{
        "vehicle_id": 771004720190304,
        "schema_id": 301,
        "language_id": 18,
        "content": "04 mar. 2019"
    },
    {
        "vehicle_id": 771004720190304,
        "schema_id": 601,
        "language_id": 18,
        "content": "Todo terreno  de 5 puertas con distancia corta entre los ejes"
    },
    {
        "vehicle_id": 771004720190304,
        "schema_id": 701,
        "language_id": 18,
        "content": "Capacidad para siete pasajeros"
    },
    {
        "vehicle_id": 771004720190304,
        "schema_id": 1101,
        "language_id": 18,
        "content": "16 bocinas BOSE, subwoofer y sonido envolvente"
    },
    {
        "vehicle_id": 771004720190304,
        "schema_id": 1301,
        "language_id": 18,
        "content": "AM/FM, Audífonos Inalámbricos, pantalla táctil y pantalla a color"
    }]
我在阵列内部观察如下: 第一次尝试

table.append(
  $("<tr>")
           .append(
                '<td><input type="checkbox" checked></td>'+
                '<td>Body style</td>'+
                '<td>'+ response.find(characteristic => characteristic.schema_id == 601 ).content || " " +'</td>'
            ),
第二次尝试

table.append(
$("<tr>")
  .append(
         '<td><input type="checkbox" checked></td>'+
         '<td>Body style</td>'+
         '<td>'+ response.find(characteristic => characteristic.schema_id == 601 ).content ? response.find(characteristic => characteristic.schema_id == 601 ).content : " " +'</td>'
),

当找不到对象时,我希望td中的值为null,但我给出了一个错误,表为null。

使用find,然后检查匹配:

答复=[{ 车辆识别号:771004720190304, schema_id:301, 语言:18, 内容:2019年3月4日 }, { 车辆识别号:771004720190304, 模式识别号:601, 语言:18, 内容:东海岸5号公路 }, { 车辆识别号:771004720190304, 模式识别号:701, 语言:18, 内容:Capacidad para siete pasajeros }, ]; table=$‘table’; 对于[701401]中的e{ 让item=response.find{schema_id}=>schema_id==e; 表1.1追加 $ 追加 + “身体风格”+ +项目?项目内容:+ , ; }
你能详细介绍一下吗?但是我给出了一个错误,并且表为null。第一次尝试似乎没有问题,除了在找到内容时缺少结束符。记住你的订单operations@KevinB控制台响应中有此erorr。查找。。。未定义,并且即使已经找到其他objectsAh,表体也没有行,因此您的问题都与您提供的大多数代码无关。你确定响应是数组吗?是的,是的,检查示例,我的真实响应是200个对象,所以我需要在他体内进行搜索。啊,所以在你的数组中找不到任何东西。好的,您的代码很好,很可能值根本不在数组中。未定义时不能执行.content,因此必须测试.find的结果。它不是一个普通对象,而是一个数组。@msg对,内容是普通对象,但响应是一个数组,实际上有一个find方法。您也可以使用filter方法,而不必将其不必要地包装到jquery集合中。