使用条件的JSON键值的子串

时间:2015-07-07 17:22:15

标签: jquery json

我有一些看起来像这样的JSON数据:

   {
  "events": [
    {
      "event": {
        "event_instances": [
          {
            "event_instance": {
              "id": 1365348,
              "ranking": 0,
              "event_id": 460956,
              "start": "2015-07-07T00:00:00-05:00",
              "end": null,
              "all_day": true
            }
          }
        ],
        "id": 460956,
        "title": "Blue Star Museums",
        "url": "http:\/\/www.samhoustonmemorialmuseum.com\/",
        "updated_at": "2015-07-07T05:27:49-05:00",
        "created_at": "2015-06-02T12:34:01-05:00",
        "facebook_id": null,
        "first_date": "2015-06-02",
        //so on and so forth

我需要在jQuery条件中使用first_date键值,基本上会这样说:

if(first_date.value().substring(0,3) === 2015){
    //do something
}

你能在jQuery中使用条件键值的子串吗?

2 个答案:

答案 0 :(得分:4)

因此假设将json分配给名为jsonVariable

的变量
var first_date = jsonVariable.events[0].event.first_date;
var first_date_year = first_date.substring(0,4);

if (first_date_year === '2015') {
    // do somethang
}

如何访问first_date

首先访问first_date您必须访问数组events,该数组的第一个元素(使用索引[0]),然后访问event属性,以及最后它的子属性first_date

如何取子串

要获取子字符串,您需要使用substr(0,4),因为第二个参数是子字符串中的length而不是index位置的结尾。

如何比较年份

然后要将子字符串与2015进行比较,您需要将2015包装在引号中以将其转换为字符串,或使用parseInt()将子字符串转换为整数。

注意:您还可以将字符串拆分为-并使用第一个元素

var first_date = jsonVariable.events[0].event.first_date;
var first_date_year = first_date.split('-').pop(); // ["2015", "06", "02"] pop the first value

答案 1 :(得分:3)

你可以这样做:

var year = MyJSON.events[0].event.first_date.substring(0,4);

if ( year === '2015' ) { ... }