【问题标题】:How can i access the multibrands.legKey property of this json object我如何访问这个 json 对象的 multibrands.legKey 属性
【发布时间】:2021-07-05 02:22:20
【问题描述】:

在给定的 Json 数组对象中,我想访问属性 Multibrands.Legkey 有人可以帮我访问 Multibrands.Legkey 属性吗?我尝试了各种方法,但我对此一无所知。我尝试像这样访问它 (airLegKeyobject[0].MultiBrands[0].Legkey) 但它给出了未定义的值?

[
        {
            "id": 0,
            "AirRequestType": 1,
            "isInstaCallResponse": false,
            "isDummyData": false,
            "DepartureAirportCode": "DFW",
            "FilterDepart": 850,
            "FilterArrival": 1049,
            "FilterDuration": 359,
            "IsSameCarrior": true,
            "LegNumber": 1,
            "NoOfStops": 0,
            "OneWayPrice": 259,
            "FilterAirportCity": "SFO",
            "ResponseID": "dcd45bf9-d07a-4566-bf83-9c35715d0615",
            "TotalFare": 227.5,
            "TotalTax": 31.46,
            "FlightNumber": 0,
            "BaggageLink": "http://www.aa.com/i18n/travelInformation/baggage/main.jsp",
            "FilterDepartCode": "DFW",
            "FilterArrivalCode": "SFO",
            "FilterAirportCityCode": "SFO",
            "FilterAirlineCode": "AA",
            "AirLegs": [
                {
                    "AirLegBrandName": "Main",
                    "AirlineCode": "AA",
                    "ArrivalAirportCode": "SFO",
                    "LegArrivalTime": "10:49a",
                    "CabinClass": "",
                    "LegDepartTime": "8:50a",
                    "DepartureAirportCode": "DFW",
                    "IsMultipleAirline": false,
                    "LegNumber": 1,
                    "NoOfStops": 0,
                    "SegmentsAirlines": " American Airlines 2798 ",
                    "TotalDuration": "3h 59m",
                    "BaggageLink": "http://www.aa.com/i18n/travelInformation/baggage/main.jsp",
                    "IsSameCarrior": true,
                    "IsLowestJourneyTime": true,
                    "IsSuppressAirline": false,
                    "IsCorporate": true,
                    "OnePlusDay": "0",
                    "Sourcekey": "2",
                    "AirlineCodeImagePath": "https://localhost:44304/images/air/74x74/aa.gif",
                    "IsAlternateAirportResponse": false,
                    "IsAlternateAirportLowestResponse": false,
                    "AirSegments": [
                        [
                            {
                                "AirCabinClass": "Economy",
                                "AirlineCode": "AA",
                                "AirlineName": "American Airlines",
                                "ArrivalAirportCityName": "San Francisco",
                                "ArrivalAirportCode": "SFO",
                                "ArrivalDate": "2021-04-09",
                                "ArrivalStateCode": "CA",
                                "ArrivalTime": "10:49a",
                                "Baggage": "",
                                "BrandName": "",
                                "CarrierDetails": "BOEING 737-800",
                                "DepartAirportCityName": "Dallas",
                                "DepartTime": "8:50a",
                                "DepartureAirportCode": "DFW",
                                "DepartureDate": "2021-04-09",
                                "DepartureStateCode": "TX",
                                "Duration": "3 hr 59 min",
                                "FlightNumber": "2798",
                                "LayOverTimeInfo": "",
                                "LegNumber": 1,
                                "OperatedAirlineName": "American Airlines",
                                "OperatedFlightNumber": "2798",
                                "RPH": "",
                                "SeatRemaining": "6",
                                "SegmentKey": "bc7fc88f-13ee-45c2-9591-93dc2e2ce6b7",
                                "SegmentOrder": "1",
                                "DepartAirportName": ""
                            }
                        ]
                    ]
                }
            ],
            "MultiBrands": [
                [
                    {
                        "ResponseID": "dcd45bf9-d07a-4566-bf83-9c35715d0615",
                        "FareKey": "/",
                        "MultiBrandID": "00000000-0000-0000-0000-000000000000",
                        "ChildBrandID": "00000000-0000-0000-0000-000000000000",
                        "LegBrandName": "main",
                        "BrandTotalFare": 259,
                        "BrandTotalPoints": 0,
                        "DisplayName": "Main",
                        "BrandPolicyId": "",
                        "BrandPolicyKey": "",
                        "BrandReasonCode": "High",
                        "BrandReasonDescription": "High",
                        "IsLowestFare": true,
                        "IsRefundable": false,
                        "AwardName": "",
                        "IsAvailable": false,
                        "IsCabinGrayOut": false,
                        "ResBookDesigCode": "L",
                        "AirBookingClassName": "Economy",
                        "HaulType": "",
                        "BrandSeatRemaining": "6",
                        "IsSuppressed": false,
                        "SegmentFareBasicCodes": "L0AKZNN1/F71C",
                        "SelectToPrice": false,
                        "SegmentCabins": "Economy",
                        "BrandAminities": "",
                        "BrandUtaData": "",
                        "ITASolutionId": "",
                        "ITASessionId": "",
                        "isAirPassSearch": false,
                        "Legkey": "DFW-SFO-AA-2798-20210409-ECON",
                        "LegkeyWithFareBasisCode": "DFW-SFO-AA-2798-20210409-ECON-L0AKZNN1"
                    }
                ]
            ]
        }```

【问题讨论】:

  • 什么是airLegKeyobject?这是整个对象的变量名吗?
  • 没错,就是这个对象的变量名。
  • 试试这个airLegKeyobject.MultiBrands[0][0].Legkey

标签: javascript json reactjs object properties


【解决方案1】:

MultiBrands的结构

"MultiBrands": [
                [
                    {
                        "ResponseID": "dcd45bf9-d07a-4566-bf83-9c35715d0615",

==> 由于MultiBrands 的内容是一个数组数组。所以你应该指出 index 2 步骤。

const airLegKeyobject = [{"id":0,"AirRequestType":1,"isInstaCallResponse":false,"isDummyData":false,"DepartureAirportCode":"DFW","FilterDepart":850,"FilterArrival":1049,"FilterDuration":359,"IsSameCarrior":true,"LegNumber":1,"NoOfStops":0,"OneWayPrice":259,"FilterAirportCity":"SFO","ResponseID":"dcd45bf9-d07a-4566-bf83-9c35715d0615","TotalFare":227.5,"TotalTax":31.46,"FlightNumber":0,"BaggageLink":"http://www.aa.com/i18n/travelInformation/baggage/main.jsp","FilterDepartCode":"DFW","FilterArrivalCode":"SFO","FilterAirportCityCode":"SFO","FilterAirlineCode":"AA","AirLegs":[{"AirLegBrandName":"Main","AirlineCode":"AA","ArrivalAirportCode":"SFO","LegArrivalTime":"10:49a","CabinClass":"","LegDepartTime":"8:50a","DepartureAirportCode":"DFW","IsMultipleAirline":false,"LegNumber":1,"NoOfStops":0,"SegmentsAirlines":" American Airlines 2798 ","TotalDuration":"3h 59m","BaggageLink":"http://www.aa.com/i18n/travelInformation/baggage/main.jsp","IsSameCarrior":true,"IsLowestJourneyTime":true,"IsSuppressAirline":false,"IsCorporate":true,"OnePlusDay":"0","Sourcekey":"2","AirlineCodeImagePath":"https://localhost:44304/images/air/74x74/aa.gif","IsAlternateAirportResponse":false,"IsAlternateAirportLowestResponse":false,"AirSegments":[[{"AirCabinClass":"Economy","AirlineCode":"AA","AirlineName":"American Airlines","ArrivalAirportCityName":"San Francisco","ArrivalAirportCode":"SFO","ArrivalDate":"2021-04-09","ArrivalStateCode":"CA","ArrivalTime":"10:49a","Baggage":"","BrandName":"","CarrierDetails":"BOEING 737-800","DepartAirportCityName":"Dallas","DepartTime":"8:50a","DepartureAirportCode":"DFW","DepartureDate":"2021-04-09","DepartureStateCode":"TX","Duration":"3 hr 59 min","FlightNumber":"2798","LayOverTimeInfo":"","LegNumber":1,"OperatedAirlineName":"American Airlines","OperatedFlightNumber":"2798","RPH":"","SeatRemaining":"6","SegmentKey":"bc7fc88f-13ee-45c2-9591-93dc2e2ce6b7","SegmentOrder":"1","DepartAirportName":""}]]}],"MultiBrands":[[{"ResponseID":"dcd45bf9-d07a-4566-bf83-9c35715d0615","FareKey":"/","MultiBrandID":"00000000-0000-0000-0000-000000000000","ChildBrandID":"00000000-0000-0000-0000-000000000000","LegBrandName":"main","BrandTotalFare":259,"BrandTotalPoints":0,"DisplayName":"Main","BrandPolicyId":"","BrandPolicyKey":"","BrandReasonCode":"High","BrandReasonDescription":"High","IsLowestFare":true,"IsRefundable":false,"AwardName":"","IsAvailable":false,"IsCabinGrayOut":false,"ResBookDesigCode":"L","AirBookingClassName":"Economy","HaulType":"","BrandSeatRemaining":"6","IsSuppressed":false,"SegmentFareBasicCodes":"L0AKZNN1/F71C","SelectToPrice":false,"SegmentCabins":"Economy","BrandAminities":"","BrandUtaData":"","ITASolutionId":"","ITASessionId":"","isAirPassSearch":false,"Legkey":"DFW-SFO-AA-2798-20210409-ECON","LegkeyWithFareBasisCode":"DFW-SFO-AA-2798-20210409-ECON-L0AKZNN1"}]]}];

console.log(airLegKeyobject[0].MultiBrands[0][0].Legkey);

【讨论】:

  • 你能再检查一遍问题吗,我做了一个编辑
  • 我忘记将数组符号放在对象的开头
  • 我刚刚更新了我的答案,请让我知道它是否有效^^! @Demogorgon
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-04-29
  • 2011-01-18
  • 1970-01-01
  • 2018-10-23
  • 2016-10-13
  • 1970-01-01
  • 2014-06-19
相关资源
最近更新 更多