将数组中存在的数据与其他数组元素进行比较

时间:2018-04-21 10:10:33

标签: javascript jquery css arrays angularjs

我是angularjs and javascript的新手。在这里,我有一组对象,如 - >

[{
        annotationType: "Full Name:"
        endOffset: "17"
        startOffset: "0",
        type: "FullName"
        value: "Abc"
    },
    {
        annotationType: "Email:"
        endOffset: "44"
        startOffset: "26",
        type: "email"
        value: "zazazbc"
    },
    {
        annotationType: "Telephone:"
        endOffset: "63"
        startOffset: "53",
        type: "TelephoneNumber"
        value: "123444455"
    },
    {
        annotationType: "Skill Set:"
        endOffset: "920"
        startOffset: "363",
        type: "skillset"
        value: "Summary Of Skills : Total 4+ years of experience in Web Applications and web Sites "
    },

   {
        annotationType: "Total Experience::"
        endOffset: "398"
        startOffset: "390",
        type: "TotalExperiece"
        value: "4+ years"
    },
]

现在,在这个数组中,我有启动偏移和endoffset。现在,我实际上突出了数据。现在,在这里发生了什么,一个值出现在另一个值然后突出显示css正在覆盖。所以,我想知道偏移量是否存在于另一个值之间,

这里举例说明技能组中存在注释类型总体验。因为Skillset是363到920,而且总体验是390到398.所以,这里给出了问题。所以,我想要一个重叠发生的数组。所以,我想比较第一个数组值和所有其他数据值,因此每个值都应与其他值进行比较。

我该怎么做?任何人都能帮我这个吗?

var check_If_One_Is_Present_In_Another = function (jsonDataArray) {
          for (var i = 1; i < jsonDataArray.length; i++) {
            if ((jsonDataArray[i].startOffset <= jsonDataArray[0].startOffset && jsonDataArray[i].endOffset <= jsonDataArray[0].endOffset && jsonDataArray[0].startOffset < jsonDataArray[i].endOffset) ||
              (jsonDataArray[0].startOffset <= jsonDataArray[i].startOffset && jsonDataArray[0].endOffset <= jsonDataArray[i].endOffset && jsonDataArray[i].startOffset < jsonDataArray[0].endOffset) ||
              (jsonDataArray[i].startOffset <= jsonDataArray[0].startOffset && jsonDataArray[0].endOffset <= jsonDataArray[i].endOffset && jsonDataArray[0].startOffset < jsonDataArray[0].endOffset) ||
              (jsonDataArray[0].startOffset <= jsonDataArray[i].startOffset && jsonDataArray[i].endOffset <= jsonDataArray[0].endOffset && jsonDataArray[i].startOffset < jsonDataArray[i].endOffset)) {

                console.log("in this ===>", jsonDataArray[i].type);
            }
          }

这用于检查一个值是否存在另一个值的一半。还

0 个答案:

没有答案