AEM Connector 12.12

# lookupByPath

The `lookupByPath` method returns the value at the specified path in the JSON object.

NOTE: This method does not make a copy of the value, so modifying the returned value affects the original object.

## Syntax

    lookupByPath( path )

## Arguments

Argument | Description
--- | ---
`path` | (string) The path of the value to return. Construct the path from array indexes and object attribute names, and use a slash (`/`) as the separator. If an object attribute name includes a slash, then escape the slash with a backslash, for example `"one\\/two"`. Notice that you must also escape a backslash with another backslash.

## Returns

(LuaJsonValue) Returns the value that exists at the specified path, or `nil` if the specified path does not exist.

## Example

    myJsonObject = LuaJsonObject:new()
    myJsonObject:assign( {
            attr1=LuaJsonObject:new( { n=42, x=5 } ),
            attr2=LuaJsonArray:new( 1, 2, "three" ),
        } )

    print ( myJsonObject:lookupByPath("attr2/2"):value() )
    -- three (LuaJsonArrays are zero-indexed)

    -- Modifying the returned value changes the original object
    local lookup_attr = myJsonObject:lookupByPath("attr1"):object()
    lookup_attr:assign("y",3)
    print (myJsonObject:string())
    -- {"attr1":{"n":42,"x":5,"y":3},"attr2":[1,2,"three"]}

## See Also

- lookup

© Copyright 2022 Micro Focus or one of its affiliates
Version 12.12 | Last updated June 2022

Send documentation feedback

Close

Send documentation feedback

To send feedback using your default email client, open an email window.

Otherwise, send your feedback and the information below to swpdl.idoldocsfeedback@microfocus.com.

We appreciate your feedback!

Product: IDOL AEM Connector 12.12

Topic Title: lookupByPath