如何检查JSON数组中是否存在特定数字

时间:2017-10-26 09:37:58

标签: jquery arrays

JSON数组是var ParamArr = [1,2,3,4]

在上面的数组中,我想检查该数组中包含的特定数字

我试过这个但没有工作

if (!ParamArr.includes(4)) {
  ParamArr.pop(4);
}

7 个答案:

答案 0 :(得分:1)

您可以使用indexOf()功能:

var arr = [1,2,3,4];

if(arr.indexOf(4) > -1){
  arr.splice(arr.indexOf(4), 1);
}

console.log(arr);

如果要删除元素,可以使用函数splice()

答案 1 :(得分:1)

你几乎是正确的,但你的解决方案存在逻辑问题。你需要检查数组是否包含元素。所以你需要使用条件var ParamArr = [1,2,3,4]; if (ParamArr.includes(4)) { ParamArr.pop(4); } console.log(ParamArr);而不是{{1}}



{{1}}




答案 2 :(得分:0)

添加一个这样的简单函数:

function isInArray(value, array) { return array.indexOf(value) > -1; }

并查看:

isInArray(4, ParamArr);

答案 3 :(得分:0)

jQuery有一个实用功能:

$.inArray(value, array)

返回valuearray的索引。如果-1不包含array,则返回value

同时检查How do I check if an array includes an object in JavaScript?

div {
  color: blue;
}

span {
  color: red;
}
<!doctype html>
<html lang="en">

<head>
  <meta charset="utf-8">
  <title>jQuery.inArray demo</title>

  <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>

<body>

  <div>"John" found at <span></span></div>
  <div>4 found at <span></span></div>
  <div>"Karl" not found, so <span></span></div>
  <div>"Pete" is in the array, but not at or after index 2, so <span></span></div>

  <script>
    var arr = [4, "Pete", 8, "John"];
    var $spans = $("span");
    $spans.eq(0).text(jQuery.inArray("John", arr));
    $spans.eq(1).text(jQuery.inArray(4, arr));
    $spans.eq(2).text(jQuery.inArray("Karl", arr));
    $spans.eq(3).text(jQuery.inArray("Pete", arr, 2));
  </script>

</body>

</html>

答案 4 :(得分:0)

您可以使用解决方案

var ParamArr = [1,2,3,4];
if (ParamArr.indexOf(4) >= 0) {
  ParamArr.pop(4);
}

console.log(ParamArr);

希望这会对你有所帮助。

答案 5 :(得分:0)

普通的旧javascript

<com.facebook.login.widget.LoginButton
            xmlns:facebook="http://schemas.android.com/apk/res-auto"
    facebook:com_facebook_login_text="Connect with Facebook"
    android:id="@+id/connect_with_FB"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginTop="10dp"/>

答案 6 :(得分:0)

var ParamArr = [1,2,3,4];

if($ .inArray(4,ParamArr)!== -1)

{

    //To do

}