Dictionary functions

A set of functions for working with dictionaries.


Dictionary

This function has 2 signatures:

Dictionary([name1, value1, ..., nameN, valueN]?) -> Dictionary

Function bundle: Core

Returns a new dictionary based on the provided arguments. The arguments are name/value pairs. e.g. dictionary('field1',val,'field2',val2,...).

Parameter

  • [name1, value1, ..., nameN, valueN] (Optional): Any - Ongoing name/value pairs.

Return value: Dictionary

Example

prints 3

Use dark colors for code blocksCopy
  
1
2
var d = Dictionary('field1', 1, 'field2', 2)
return d.field1 + d.field2

Dictionary(jsonText) -> Dictionary

Since version 1.8

Function bundle: Core

Deserializes JSON text as an Arcade Dictionary.

Parameter

  • jsonText: Text - The JSON to convert to an Arcade dictionary. This must be serialized as a text value.

Return value: Dictionary

Example

Deserializes JSON as a Dictionary.

Use dark colors for code blocksCopy
   
1
2
3
var extraInfo = '{"id": 1, "population": 200, "city": "Spencer, ID"}'
var spencerIDdata = Dictionary(extraInfo)
spencerIDdata.population // Returns 200

FromJSON

FromJSON(jsonText) -> Dictionary | Array<Any> | Text | Boolean | Number

Since version 1.14

Function bundle: Core

Deserializes JSON text into its equivalent Arcade data types.

Parameter

  • jsonText: Text - The JSON text to deserialize to an Arcade data type.

Return value: Dictionary | Array<Any> | Text | Boolean | Number

Examples

Converts text to a boolean

Use dark colors for code blocksCopy
  
1
2
FromJSON("true")
// Returns true

Converts text to a number

Use dark colors for code blocksCopy
  
1
2
fromJSON("731.1")
// returns 731.1

Converts text to a dictionary

Use dark colors for code blocksCopy
   
1
2
3
var d = fromJSON('{"kids": 3, "adults": 4 }')
d.kids + d.adults
// returns 7

Converts text to an array

Use dark colors for code blocksCopy
  
1
2
fromJSON('["one", 2, "three", false]')
// returns [ "one", 2, "three", false ]

Converts text to null

Use dark colors for code blocksCopy
  
1
2
fromJSON("null")
// returns null

HasKey

HasKey(value, key) -> Boolean

Function bundle: Core

Indicates whether a dictionary or feature has the input key.

Parameters

  • value: Dictionary | Feature - The dictionary or feature to check for a key or field name.
  • key: Text - The key or field name to check.

Return value: Boolean

Example

prints true

Use dark colors for code blocksCopy
  
1
2
var d = Dictionary('Port Hope', 16214,  'Grafton', '<1000', 'Cobourg', 18519);
HasKey(d, 'Cobourg');

HasValue

HasValue(inputDictionary, key) -> Boolean

Since version 1.20

Function bundle: Core

Indicates whether a dictionary has a given key and if that key has a value.

Parameters

  • inputDictionary: Dictionary | Feature - The dictionary or feature to check.
  • key: Text - The key or field name to check.

Return value: Boolean

Examples

Dictionary with key that has a value

Use dark colors for code blocksCopy
   
1
2
3
var d = Dictionary('Port Hope', 16214,  'Grafton', '<1000', 'Cobourg', 18519);
HasValue(d, 'Cobourg');
// returns true

Dictionary with key that does not have a value

Use dark colors for code blocksCopy
   
1
2
3
var d = Dictionary('Port Hope', 16214,  'Grafton', '<1000', 'Cobourg', null);
HasValue(d, 'Cobourg');
// returns false

Dictionary without the provided key

Use dark colors for code blocksCopy
   
1
2
3
var d = Dictionary('Port Hope', 16214,  'Grafton', '<1000');
HasValue(d, 'Cobourg');
// returns false

Dictionary without the provided key

Use dark colors for code blocksCopy
   
1
2
3
if ( HasValue( Schema($feature).fields[0], "domain" ) ) {
  // Do something with the value if true
}

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.