import ExpressionInfo from "@arcgis/core/layers/support/ExpressionInfo.js";const ExpressionInfo = await $arcgis.import("@arcgis/core/layers/support/ExpressionInfo.js");- Inheritance:
- ExpressionInfo→
Accessor
- Since
- ArcGIS Maps SDK for JavaScript 4.25
The ExpressionInfo class references an Arcade expression following
the specification defined by the Arcade Visualization Profile.
Expressions must return a string or a number and may access data values from the feature
with the $feature profile variable.
This expression is used for defining an AggregateField for use in a FeatureReductionBinning or a FeatureReductionCluster renderer, popup, or label. It is executed once defined inside a layer's FeatureLayer.featureReduction property.
Example
const expressionInfo = new ExpressionInfo({ title: "Population per square kilometer", returnType: "number", expression: "$feature.population / AreaGeodetic($feature, 'square-kilometers')"});Constructors
Constructor
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| properties | | |
Properties
| Property | Type | Class |
|---|---|---|
declaredClass readonly inherited | ||
| | ||
"number" | "string" | | |
| |
expression
- Type
- string
An Arcade expression following
the specification defined by the Arcade Visualization Profile.
Expressions must return a string or a number and may access data values from the feature
with the $feature profile variable.
- See also
Example
// Calculates the percentage of the population that is AsianexpressionInfo.expression = "($feature.Asian / $feature.TOT_POP) * 100";Methods
fromJSON
- Signature
-
fromJSON (json: any): any
Creates a new instance of this class and initializes it with values from a JSON object
generated from an ArcGIS product. The object passed into the input json
parameter often comes from a response to a query operation in the REST API or a
toJSON()
method from another ArcGIS product. See the Using fromJSON()
topic in the Guide for details and examples of when and how to use this function.
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| json | A JSON representation of the instance in the ArcGIS format. See the ArcGIS REST API documentation for examples of the structure of various input JSON objects. | |
- Returns
- any
Returns a new instance of this class.
clone
- Signature
-
clone (): this
Creates a deep clone of this object. Any properties that store values by reference will be assigned copies of the referenced values on the cloned instance.
- Returns
- this
A deep clone of the class instance that invoked this method.
toJSON
- Signature
-
toJSON (): any
Converts an instance of this class to its ArcGIS portal JSON representation. See the Using fromJSON() guide topic for more information.
- Returns
- any
The ArcGIS portal JSON representation of an instance of this class.