簡體   English   中英

如何檢查數組是否包含Javascript中的值

[英]How to check if array contains a value in Javascript

我有一個json對象,它具有如下數組屬性“ partners”:

    { 
    "_id" : ObjectId("578667b1bb14ca1c2773adaa"), 
    "customer" : null,  
    "created" : ISODate("2016-07-13T16:09:21.015+0000"), 
    "description" : "", 
    "subject" : "case 2", 
    "__v" : NumberInt(5), 
    "partners" : [
        ObjectId("57857d93038aacd81ef3ad55"), 
        ObjectId("57857d93038aacd81ef3ad56")
    ]
}

我想使用以下代碼檢查伙伴數組上是否已存在元素:

 _.includes(case_.partners, partner._id)

就是這樣,您知道我為此使用了lodash,但是由於某些原因無法正常工作,我也不知道為什么,有人知道這是什么問題嗎?

據我了解,您提供的partners示例是一個javascript對象,您應該嘗試在Json中使用原始類型值。

您可以通過以下方式將ObjectId轉換為String

ObjectId("578667b1bb14ca1c2773adaa") + '';

要么

ObjectId("578667b1bb14ca1c2773adaa").toHexString();

Json對象應如下所示:

{ 
"_id" : "578667b1bb14ca1c2773adaa", 
"customer" : null,  
"created" : "2016-07-13T16:09:21.015+0000", 
"description" : "", 
"subject" : "case 2", 
"__v" : 5, 
"partners" : [
    "57857d93038aacd81ef3ad55", 
    "57857d93038aacd81ef3ad56"
]}

因此解決方案是將Javascript對象轉換為Json對象,然后進行比較。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM