Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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_Arrays_Json_Loops_Each - Fatal编程技术网

Jquery 检查数组中的值是否存在,以及是否小于此数组中的下一个值

Jquery 检查数组中的值是否存在,以及是否小于此数组中的下一个值,jquery,arrays,json,loops,each,Jquery,Arrays,Json,Loops,Each,我需要检查给定数组中是否存在输入字段中的值,以及该值是否也小于同一数组中的下一个值 输入值用于更改购物车中的物品数量。根据该数量,将使用相应的价格来计算总数 我得到了一个包含以下内容的数组 [ { id: 1, price: "20.0000", qty: "2.0000" }, { id: 2, price: "15.0000", qty: "4.0000" }, { id: 3, price: "10.0000", qty: "8.0000" } ] 假设输入值是2,那么我要计

我需要检查给定数组中是否存在输入字段中的值,以及该值是否也小于同一数组中的下一个值

输入值用于更改购物车中的物品数量。根据该数量,将使用相应的价格来计算总数

我得到了一个包含以下内容的数组

[
  { id: 1, price: "20.0000", qty: "2.0000" },
  { id: 2, price: "15.0000", qty: "4.0000" },
  { id: 3, price: "10.0000", qty: "8.0000" }
]
假设输入值是2,那么我要计算的价格是20.0000,如果输入值是3,那么价格也是15.0000,依此类推。因此,它不仅要查找匹配的数字,还要检查该数字是否低于上面数组中的以下数字


有没有一个好的干净的方法来完成这样的事情?我已经搜索了一些例子,但是找不到一个和我的一样的。

也许类似的东西可以用

var input = $('#input').val();
if(input > 1)
{
  if(array[input].price < array[input+1].price)
  {
    return array[input+1].price;
  }
}

下面是一个关于它如何工作的示例,只需倾听数量输入的变化并相应地更新即可。 向后循环价格数组,直到找到与输入匹配的数量并使用该价格

风险价值价格=[ {id:1,价格:20.0000,数量:2.0000}, {id:2,价格:15.0000,数量:4.0000}, {id:3,价格:10.0000,数量:8.0000} ]; 函数updatePricequantity,price{ $'itemPrice'.textprice; $'totalPrice'.textquantity*价格; } 函数计算价格{ var数量=parseInt$'quantity'.val,10 | | 0, itemPrice=parseInt$'itemPrice'.val,10 | | parseIntprices[0]。价格,10; forvar i=prices.length-1;i>=0;i-{ 如果数量>=价格[i]。数量,10{ itemPrice=parseIntprices[i]。价格,10; 打破 } } 更新价格数量、项目价格; } 计算价格; $“数量”。在“输入”上,计算价格; 每项价格:
总价:当id为1时,结果应该是什么?感谢您提供的完美解决方案!它工作得很好。没有想到这种方法。