ArcGIS API for JavaScript 4.3 and 3.20 released

We are excited to announce the releases of both the 4.3 and 3.20 versions of the ArcGIS API for JavaScript. Version 4.3 continues to build upon its current functionality and bring existing features from 3.x into 4 while also introducing exciting new features. This article will discuss FeatureLayer, widget, and SceneLayer enhancements. Be sure to read the entire list of updates and enhancements in the release notes for version 4.3. At the end of this article, we will also cover the improvements and enhancements to version 3.20 for updates to the ArcGIS Platform.

What’s new in version 4.3

FeatureLayer improvements

Prior to this release, FeatureLayer drawing was more limited and restricted datasets with a larger than average number of features. At the 4.3 release, the fetch strategy for 2D drawing and querying has been improved to request and draw more features in less time, giving priority to features in the center of the view. See the sample below, which loads a web map containing a feature layer with more than 30,000 zip codes.

You can now add, update or delete features from a feature layer in a feature service programmatically. This release is the first step in supporting editing that will eventually reach parity with 3.x in future releases. This sample demonstrates how you can add and delete features in a service and update feature attributes by building your own editing tools with the 4.3 version. It also showcases the new Expand widget that we think developers will put to good use.

Widget improvements

At 4.2, we introduced the 4.x widget framework as implemented within the LayerList and Print widgets.
In this release, the following widgets have been updated to the new widget framework: Attribution, BasemapToggle, Compass, Home, Locate, NavigationToggle, Track and Zoom.

Filtering and querying SceneLayers

3D visualizations are an immersive form of revealing patterns in your data, and the ability to filter and query scene layers will enhance these visualizations.

Filtering a mesh scene layer is useful to display a subset of buildings. The sample below uses this filtering mechanism to filter floors in a building on the esri campus.

In addition to filtering the scene layer, it is also possible to determine the 3D extent of a given feature and obtain the attribute information about a 3D object in the current view. The following sample illustrates this functionality where it is possible to query the attribute information of a given building and zoom to the extent of the feature.

New resources for 2D and 3D symbols

We are also introducing the new Esri Web Style Symbols guide topic to support the use of the WebStyleSymbol, including realistic 3D object symbols. The new Playground will also aid developers in designing symbols, by allowing them to visually interact with symbol properties. On each property value change, the playground generates the code needed to reference the symbol in a custom app.

What’s new in version 3.20

Planetary measurement

The Measurement widget and Scalebar widget have been updated to support many non-Earth coordinate systems, for example for the Moon, Mars, Venus and several more. This allows you to properly measure craters on the moon or plan your next trip to Mars.

Barriers with Directions widget

The Directions widget now supports working with barriers to determine optimal routing. This adds a restriction line barrier, which prohibits travel where the barrier intersects the route. For example, you may add a line barrier if there is a parade or protest that blocks traffic on your route.

Closing thoughts

As we progress forward version 3.x continues to support the ArcGIS Platform while all major development efforts are geared towards advancing version 4.x of the API. We look forward to visiting with those of you attending the Developer Summit and be sure to review the Technical Session Guide for the Web Developer before arriving in Palm Springs.

For the full list of features in this release, please refer to the Release Notes for version 4.3 and the What’s New for version 3.20.

Bonus: ArcGIS DevLabs

In addition to the sample code in the SDK, the Developers site now has a set of labs that teach how to build an app in 15 minutes. The ArcGIS DevLabs guide you through the three phases of building geospatial apps: Data, Design, Develop; and there’s six of them specific to JavaScript.

About the authors

Working daily to elevate user happiness about reading the ArcGIS Maps SDK for JavaScript documentation. Occasionally blogging about the ArcGIS Maps SDK for JavaScript, and technical presenter at the Esri Developer Summit and User's Conferences. A Product Engineer on the Esri ArcGIS Maps SDK for JavaScript team.


20+ years of experience with web mapping. Currently lead project engineer for the ArcGIS Maps SDK for JavaScript development team at Esri.


Julie Powell is a Principal Product Manager, focusing on Esri's web development technologies. She works to ensure developers can be successful in building state of the art, purposeful solutions using ArcGIS software. Julie brings 20 years of experience working with global leaders such as Hewlett-Packard and Esri, delivering a variety of software solutions for both the enterprise and consumer markets. Julie has worked on a wide range of projects and consulting endeavors, including serving as technical lead for web mapping solutions for strategic customers.


Next Article

Designing and testing for accessibility in GIS and mapping

Read this article