{"id":1615042,"date":"2022-06-23T13:03:29","date_gmt":"2022-06-23T20:03:29","guid":{"rendered":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=1615042"},"modified":"2022-11-21T01:46:11","modified_gmt":"2022-11-21T09:46:11","slug":"whats-new-in-arcgis-api-for-javascript-version-4-24","status":"publish","type":"blog","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24","title":{"rendered":"What&#8217;s new in ArcGIS API for JavaScript (version 4.24)"},"author":4271,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_acf_changed":false,"_searchwp_excluded":""},"categories":[37101],"tags":[30821,24921,23221],"industry":[],"product":[36831,36601],"class_list":["post-1615042","blog","type-blog","status-publish","format-standard","hentry","category-announcements","tag-charts","tag-javascript","tag-web-mapping","product-js-api-arcgis","product-developers"],"acf":{"short_description":"Image and video overlays, pie chart layer style, faster heatmaps, client-side binning, rain and snow effects in scenes, and lots more.","flexible_content":[{"acf_fc_layout":"content","content":"<p>The ArcGIS API for JavaScript was updated today with some enhancements that we are really excited about! Overlay both images and videos on the map, style your layers with pie charts, play around with faster heatmaps, use client-side binning for your dense datasets, and lots more. Read on for an overview of some of the highlights of today\u2019s release.<\/p>\n<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#medialayer\">Overlay images and videos<\/a><\/h2>\n<p>The new MediaLayer (released in <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/faq\/#what-does-the-beta-tag-mean\">beta<\/a>) is used to overlay static images and videos on the map. For example, you can use it to display scanned historic maps, weather data, aerial imagery, and drone images or video. This capability not only matches the 3.x MapImageLayer\u2019s ability to overlay images, but exceeds the scope of what 3.x offered by including support for:<\/p>\n<ul>\n<li>Both 2D map views and 3D scene views<\/li>\n<li>Images and videos<\/li>\n<li>Ability to easily add and remove images\/videos on the fly<\/li>\n<li>Layer blending &amp; other bells and whistles that are unique to 4.x<\/li>\n<li>Like in 3.x, an image can be geolocated using an extent, but with the new layer, the media corners can also be placed individually<\/li>\n<\/ul>\n"},{"acf_fc_layout":"image","image":{"ID":1615062,"id":1615062,"title":"media-layer","filename":"media-layer.gif","filesize":2834867,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/media-layer.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/media-layer","alt":"Media layer","author":"4271","description":"","caption":"This NASA video follows sea salt, dust, and smoke from Aug 14 to Aug 23, 2017, to reveal how these particles are transported across the map.","name":"media-layer","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 04:11:58","modified":"2022-06-19 04:14:15","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":450,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/media-layer-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/media-layer.gif","medium-width":464,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/media-layer.gif","medium_large-width":768,"medium_large-height":432,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/media-layer.gif","large-width":800,"large-height":450,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/media-layer.gif","1536x1536-width":800,"1536x1536-height":450,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/media-layer.gif","2048x2048-width":800,"2048x2048-height":450,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/media-layer.gif","card_image-width":800,"card_image-height":450,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/media-layer.gif","wide_image-width":800,"wide_image-height":450}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/layers-medialayer-video\/"},{"acf_fc_layout":"content","content":"<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#pie-chart-rendering\">Pie chart style<\/a><\/h2>\n<p>The <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-renderers-PieChartRenderer.html\">PieChartRenderer<\/a> allows you to create a pie chart comparing multiple attribute values for each feature in a point or polygon layer. Pie charts are very useful to present proportions of more than one category within a region; a good example is age or ethnic demographics or highest school level attainment shown below.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1615072,"id":1615072,"title":"pie-chart","filename":"pie-chart.png","filesize":43126,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/pie-chart.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/pie-chart","alt":"","author":"4271","description":"","caption":"This app shows the highest levels of education attained by people living in each county. The pie slices show a comparison of the levels of education attained while the size of each pie is driven by the county population.","name":"pie-chart","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 04:16:34","modified":"2022-06-19 04:18:45","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":450,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/pie-chart-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/pie-chart.png","medium-width":464,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/pie-chart.png","medium_large-width":768,"medium_large-height":432,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/pie-chart.png","large-width":800,"large-height":450,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/pie-chart.png","1536x1536-width":800,"1536x1536-height":450,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/pie-chart.png","2048x2048-width":800,"2048x2048-height":450,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/pie-chart.png","card_image-width":800,"card_image-height":450,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/pie-chart.png","wide_image-width":800,"wide_image-height":450}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/visualization-pie-chart\/"},{"acf_fc_layout":"content","content":"<p>On the topic of pie charts, if you have pie charts configured in your popups, the colors will now match your layers when using predominance, dot density, or the new pie chart renderer.<\/p>\n<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#client-side-binning\">Client-side binning<\/a><\/h2>\n<p>Binning (released in\u00a0<a href=\"https:\/\/jsapi.esri.com\/testbuilds\/SDK--4.24-release---4.24-release\/faq\/#what-does-the-beta-tag-mean\">beta<\/a>) is a method for visualizing densities of points, similar to clustering and heatmaps. While clustering aggregates points into varying boundaries depending on the density and dispersion of the data, binning aggregates the data into an equally divided grid of cells. You can define how you want to aggregate the numerical fields within each bin and use them in the configuration of the bin\u2019s labels, popups, and rendering.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1615082,"id":1615082,"title":"binning","filename":"binning.jpg","filesize":130928,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/binning.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/binning","alt":"","author":"4271","description":"","caption":"","name":"binning","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 04:20:59","modified":"2022-06-19 04:20:59","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1046,"height":582,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/binning-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/binning.jpg","medium-width":464,"medium-height":258,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/binning.jpg","medium_large-width":768,"medium_large-height":427,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/binning.jpg","large-width":1046,"large-height":582,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/binning.jpg","1536x1536-width":1046,"1536x1536-height":582,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/binning.jpg","2048x2048-width":1046,"2048x2048-height":582,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/binning-826x460.jpg","card_image-width":826,"card_image-height":460,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/binning.jpg","wide_image-width":1046,"wide_image-height":582}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/featurereduction-binning\/"},{"acf_fc_layout":"content","content":"<p>Server-side binning, which will allow you to display aggregates of very large datasets, will be added at a future release.<\/p>\n<p>Want to understand binning vs clustering better? Check out this <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/featurereduction-binning\/#binning-versus-clustering\">sample description<\/a>.<\/p>\n<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#improved-heatmaprenderer\">Better, faster heatmaps<\/a><\/h2>\n<p>Last release we introduced heatmaps in 3D scenes. With this release, we\u2019ve enhanced the <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-renderers-HeatmapRenderer.html\">HeatmapRenderer<\/a> capabilities for both 2D and 3D visualizations.<\/p>\n<p><strong>Popups (2D and 3D). <\/strong>Underlying points in a heatmap display popups and can be returned in a hitTest operation.<\/p>\n<p><strong>Faster and smoother experience in 2D. <\/strong>Heatmaps now render with WebGL, enabling it to render a lot faster, handle very large datasets, and provide a smoother experience when interacting with the map.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1631932,"id":1631932,"title":"chicago-heatmap-compare-prd-devext-v2","filename":"chicago-heatmap-compare-prd-devext-v2.gif","filesize":1920672,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/chicago-heatmap-compare-prd-devext-v2.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/chicago-heatmap-compare-prd-devext-v2","alt":"","author":"4271","description":"","caption":"86,000 point features are visualized as a heatmap, with a much faster experience in 4.24 (RIGHT) than 4.23 (LEFT) due to the move to WebGL2 and other improvements.","name":"chicago-heatmap-compare-prd-devext-v2","status":"inherit","uploaded_to":1615042,"date":"2022-06-23 13:38:32","modified":"2022-06-23 13:42:29","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1299,"height":579,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/chicago-heatmap-compare-prd-devext-v2-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/chicago-heatmap-compare-prd-devext-v2.gif","medium-width":464,"medium-height":207,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/chicago-heatmap-compare-prd-devext-v2.gif","medium_large-width":768,"medium_large-height":342,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/chicago-heatmap-compare-prd-devext-v2.gif","large-width":1299,"large-height":579,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/chicago-heatmap-compare-prd-devext-v2.gif","1536x1536-width":1299,"1536x1536-height":579,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/chicago-heatmap-compare-prd-devext-v2.gif","2048x2048-width":1299,"2048x2048-height":579,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/chicago-heatmap-compare-prd-devext-v2-826x368.gif","card_image-width":826,"card_image-height":368,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/chicago-heatmap-compare-prd-devext-v2.gif","wide_image-width":1299,"wide_image-height":579}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p><strong>New bells &amp; whistles in 2D. <\/strong>You can include labels in 2D map views, and filter and apply effects to features with dynamic updates to the heatmap.<\/p>\n<p><strong>Static heatmaps.<\/strong> Until now, heatmaps in 2D always recalculated as the user zooms in and out, resulting in different heatmap visualizations based on the scale. With today\u2019s update, you can choose to keep this default behavior, or preserve a heatmap across various scales. By setting the <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-renderers-HeatmapRenderer.html#referenceScale\">referenceScale<\/a>\u00a0property (originally introduced last release for 3D), the heatmap visualization is locked at a specific scale so it will appear consistent when zooming in and out.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1615122,"id":1615122,"title":"heatmaps","filename":"heatmaps.jpg","filesize":108923,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/heatmaps.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/heatmaps","alt":"Compare the differences between static and dynamic (default) heatmaps at various scales above and below the reference scale.","author":"4271","description":"","caption":"Compare the differences between static and dynamic (default) heatmaps at various scales above and below the reference scale.","name":"heatmaps","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 04:32:13","modified":"2022-06-22 00:44:41","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1119,"height":506,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/heatmaps-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/heatmaps.jpg","medium-width":464,"medium-height":210,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/heatmaps.jpg","medium_large-width":768,"medium_large-height":347,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/heatmaps.jpg","large-width":1119,"large-height":506,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/heatmaps.jpg","1536x1536-width":1119,"1536x1536-height":506,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/heatmaps.jpg","2048x2048-width":1119,"2048x2048-height":506,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/heatmaps-826x374.jpg","card_image-width":826,"card_image-height":374,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/heatmaps.jpg","wide_image-width":1119,"wide_image-height":506}},"image_position":"center","orientation":"horizontal","hyperlink":""},{"acf_fc_layout":"content","content":"<p>To learn more about these next-generation heatmaps, see the <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#improved-heatmaprenderer\">release notes<\/a>\u00a0and this <a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/next-generation-heat-maps-mapviewer\/\">blog<\/a>.<\/p>\n<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#openstreetmap-buildings-and-trees\">Worldwide buildings and trees!<\/a><\/h2>\n<p>Did you know that <a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-living-atlas\/mapping\/new-osm-3d-scene-layers\/\">ArcGIS Living Atlas was just updated<\/a> with a new global expanse of 3D buildings and trees based on OpenStreetMap (OSM) data? That means you can build your apps using this new layer, add context in your scenes and apply spatial filters for areas where you want to place your own data. This presents an exciting opportunity for many developers, including those that would like to visualize their 2D data in a 3D context.<\/p>\n<p>Visit your favorite places in the new OSM Buildings scene:<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1615152,"id":1615152,"title":"3d-osm-buildings-and-trees","filename":"3d-osm-buildings-and-trees.png","filesize":104806,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-osm-buildings-and-trees.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/3d-osm-buildings-and-trees","alt":"","author":"4271","description":"","caption":"","name":"3d-osm-buildings-and-trees","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 04:36:40","modified":"2022-06-19 04:36:40","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":450,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-osm-buildings-and-trees-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-osm-buildings-and-trees.png","medium-width":464,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-osm-buildings-and-trees.png","medium_large-width":768,"medium_large-height":432,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-osm-buildings-and-trees.png","large-width":800,"large-height":450,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-osm-buildings-and-trees.png","1536x1536-width":800,"1536x1536-height":450,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-osm-buildings-and-trees.png","2048x2048-width":800,"2048x2048-height":450,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-osm-buildings-and-trees.png","card_image-width":800,"card_image-height":450,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-osm-buildings-and-trees.png","wide_image-width":800,"wide_image-height":450}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/esriurl.com\/osm-buildings"},{"acf_fc_layout":"content","content":"<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#weather-effects\">Rain and snow effects<\/a><\/h2>\n<p>Make your scenes more immersive by adding weather effects for\u00a0<a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-views-3d-environment-RainyWeather.html#precipitation\">rain<\/a>\u00a0and\u00a0<a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-views-3d-environment-SnowyWeather.html\">snowfall<\/a>. You can adjust the amount of precipitation or have your 3D content covered in snow. Weather settings are now persisted in web scenes and slides, making it easier to author and share different scenarios.<\/p>\n<p>A new sample uses the weather effects to visualize extreme weather scenarios in Utrecht:<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1615142,"id":1615142,"title":"3d-weather","filename":"3d-weather.gif","filesize":1239320,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-weather.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/3d-weather","alt":"","author":"4271","description":"","caption":"","name":"3d-weather","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 04:35:29","modified":"2022-06-19 04:35:29","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":450,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-weather-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-weather.gif","medium-width":464,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-weather.gif","medium_large-width":768,"medium_large-height":432,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-weather.gif","large-width":800,"large-height":450,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-weather.gif","1536x1536-width":800,"1536x1536-height":450,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-weather.gif","2048x2048-width":800,"2048x2048-height":450,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-weather.gif","card_image-width":800,"card_image-height":450,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-weather.gif","wide_image-width":800,"wide_image-height":450}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/scene-weather\/"},{"acf_fc_layout":"content","content":"<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#blend-modes\">Layer blending in 3D scenes<\/a><\/h2>\n<p>Create new terrain visualizations using <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-TileLayer.html#blendMode\">blend modes<\/a> in 3D. You can use the same blend modes already available in 2D to combine multiple tiled layers in your scene.<\/p>\n<p>Check out a new sample that blends a hillshade layer over an OSM basemap to provide more contrast and spatial awareness.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1615162,"id":1615162,"title":"blend-modes-3d","filename":"blend-modes-3d.png","filesize":111429,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/blend-modes-3d.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/blend-modes-3d","alt":"","author":"4271","description":"","caption":"","name":"blend-modes-3d","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 04:37:28","modified":"2022-06-19 04:37:28","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":450,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/blend-modes-3d-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/blend-modes-3d.png","medium-width":464,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/blend-modes-3d.png","medium_large-width":768,"medium_large-height":432,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/blend-modes-3d.png","large-width":800,"large-height":450,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/blend-modes-3d.png","1536x1536-width":800,"1536x1536-height":450,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/blend-modes-3d.png","2048x2048-width":800,"2048x2048-height":450,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/blend-modes-3d.png","card_image-width":800,"card_image-height":450,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/blend-modes-3d.png","wide_image-width":800,"wide_image-height":450}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/scene-blendmode\/"},{"acf_fc_layout":"content","content":"<h2 id=\"voxel-layer-variables\"><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#voxel-layer-variables\">Voxel layer variables<\/a><\/h2>\n<p>Change the appearance of your\u00a0<a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-VoxelLayer.html\">voxel data<\/a> using previously published variables. Toggle between visualizing the variables as surfaces or using the full volume of the layer. In addition, you can configure the voxel to exaggerate and offset the rendered voxels to better understand its spatial characteristics.<\/p>\n<p>Try out these new rendering capabilities in a new\u00a0<a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/layers-voxel-variable\/\">voxel layer sample<\/a>:<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1615292,"id":1615292,"title":"3d-voxel","filename":"3d-voxel.gif","filesize":1207682,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-voxel.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/3d-voxel","alt":"","author":"4271","description":"","caption":"","name":"3d-voxel","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 05:30:33","modified":"2022-06-19 05:30:33","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":450,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-voxel-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-voxel.gif","medium-width":464,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-voxel.gif","medium_large-width":768,"medium_large-height":432,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-voxel.gif","large-width":800,"large-height":450,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-voxel.gif","1536x1536-width":800,"1536x1536-height":450,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-voxel.gif","2048x2048-width":800,"2048x2048-height":450,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-voxel.gif","card_image-width":800,"card_image-height":450,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-voxel.gif","wide_image-width":800,"wide_image-height":450}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/layers-voxel-variable\/"},{"acf_fc_layout":"content","content":"<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#improved-editing\">Improved drawing in 3D scenes<\/a><\/h2>\n<p>New\u00a0<a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-widgets-Sketch.html#tooltipOptions\">tooltips<\/a>\u00a0and\u00a0<a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-widgets-Sketch.html#labelOptions\">labels<\/a> display measurements when creating or updating existing features with the Sketch\u00a0or\u00a0Editor\u00a0widgets. Labels indicate the length of Polygon and Polyline segments while tooltips show the total length for lines or area for polygons, as well as rotation, scale, and distance. Additionally, elevation is shown when editing absolute heights.<\/p>\n<p>These tooltips and labels will be added to the drawing experience in 2D map views in a future release.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1615172,"id":1615172,"title":"3d-improved-editing","filename":"3d-improved-editing.gif","filesize":603079,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-improved-editing.gif","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/3d-improved-editing","alt":"","author":"4271","description":"","caption":"","name":"3d-improved-editing","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 04:39:34","modified":"2022-06-19 04:39:34","menu_order":0,"mime_type":"image\/gif","type":"image","subtype":"gif","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":450,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-improved-editing-213x200.gif","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-improved-editing.gif","medium-width":464,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-improved-editing.gif","medium_large-width":768,"medium_large-height":432,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-improved-editing.gif","large-width":800,"large-height":450,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-improved-editing.gif","1536x1536-width":800,"1536x1536-height":450,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-improved-editing.gif","2048x2048-width":800,"2048x2048-height":450,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-improved-editing.gif","card_image-width":800,"card_image-height":450,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/3d-improved-editing.gif","wide_image-width":800,"wide_image-height":450}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/sketch-3d\/"},{"acf_fc_layout":"content","content":"<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#routing\">Directions widget saves routes and lots more<\/a><\/h2>\n<p>Last release, we introduced the Route Layer which offers an easy and powerful way for visualizing, solving, and even saving routes.<\/p>\n<p>The power of the route layer comes into focus by enabling some important enhancements in the Directions widget with this release. Now powered by the route layer, the Directions widget includes the following advancements:<\/p>\n<p><strong>Save routes.<\/strong> Your users can get directions, and then save the route to their ArcGIS Online or Enterprise organization.<\/p>\n<p><strong>Open routes.<\/strong> Open, view, and modify existing routes from the end user\u2019s ArcGIS Online or Enterprise organization.<\/p>\n<p><strong>New workflows.<\/strong> You can easily build new workflows for your users by taking advantage of the ability to pre-load the widget with a route or dynamically add or remove stops programmatically. For example, you could add a custom action to your popup that allows the user to add another stop to the clicked on location and recalculate the route.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1615352,"id":1615352,"title":"custom-route-symbols","filename":"custom-route-symbols.jpg","filesize":108919,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/custom-route-symbols.jpg","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/custom-route-symbols","alt":"","author":"4271","description":"","caption":"","name":"custom-route-symbols","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 19:58:58","modified":"2022-06-19 19:58:58","menu_order":0,"mime_type":"image\/jpeg","type":"image","subtype":"jpeg","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":1451,"height":552,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/custom-route-symbols-213x200.jpg","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/custom-route-symbols.jpg","medium-width":464,"medium-height":177,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/custom-route-symbols.jpg","medium_large-width":768,"medium_large-height":292,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/custom-route-symbols.jpg","large-width":1451,"large-height":552,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/custom-route-symbols.jpg","1536x1536-width":1451,"1536x1536-height":552,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/custom-route-symbols.jpg","2048x2048-width":1451,"2048x2048-height":552,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/custom-route-symbols-826x314.jpg","card_image-width":826,"card_image-height":314,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/custom-route-symbols.jpg","wide_image-width":1451,"wide_image-height":552}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/widgets-directions\/"},{"acf_fc_layout":"content","content":"<p>To take advantage of these new capabilities in the Directions widget, it must be instantiated with a new or existing RouteLayer. The old workflow of creating a Directions widget without a RouteLayer is deprecated and will not be supported in a future release.<\/p>\n<p>There\u2019s more in store for the Directions widget, including the ability to print directions and place barriers coming in a future release.<\/p>\n<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#cimsymbol-enhancements\">Improved vector symbology and a new experience<\/a><\/h2>\n<p>Have you tried out the <a href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/arcgis-online\/mapping\/symbol-styler-using-complex-symbols-in-map-viewer\/\">new vector symbol styling capabilities<\/a> in the Map Viewer? It allows you to design vector symbols for layers and for sketched graphics, with fine grained control over symbol layer characteristics like color and line thickness. Under the hood, it is creating CIMSymbols which have been available in the API for three years. However, this tool makes it easy for you to design vector symbols just the way you like them, load them in your web maps or layer items, and enjoy their crisp display at any scale.<\/p>\n<p>New in this API release is the ability to choose between random and fixed patterns for polygon fills, which is also accessible in the Map Viewer symbol styler.<\/p>\n"},{"acf_fc_layout":"image","image":{"ID":1615192,"id":1615192,"title":"markerplacement","filename":"markerplacement.png","filesize":70232,"url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/markerplacement.png","link":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\/markerplacement-2","alt":"","author":"4271","description":"","caption":"","name":"markerplacement-2","status":"inherit","uploaded_to":1615042,"date":"2022-06-19 04:41:45","modified":"2022-06-19 04:41:45","menu_order":0,"mime_type":"image\/png","type":"image","subtype":"png","icon":"https:\/\/www.esri.com\/arcgis-blog\/wp-includes\/images\/media\/default.png","width":800,"height":450,"sizes":{"thumbnail":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/markerplacement-213x200.png","thumbnail-width":213,"thumbnail-height":200,"medium":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/markerplacement.png","medium-width":464,"medium-height":261,"medium_large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/markerplacement.png","medium_large-width":768,"medium_large-height":432,"large":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/markerplacement.png","large-width":800,"large-height":450,"1536x1536":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/markerplacement.png","1536x1536-width":800,"1536x1536-height":450,"2048x2048":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/markerplacement.png","2048x2048-width":800,"2048x2048-height":450,"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/markerplacement.png","card_image-width":800,"card_image-height":450,"wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/markerplacement.png","wide_image-width":800,"wide_image-height":450}},"image_position":"center","orientation":"horizontal","hyperlink":"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/cim-marker-placement\/"},{"acf_fc_layout":"content","content":"<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#execute-arcade-expressions\">For Arcade fans\u2026<\/a><\/h2>\n<p><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/arcade\/\">Arcade<\/a>\u00a0is an expression language that allows you to calculate values and create custom content in various\u00a0<a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/arcade\/#where-can-i-use-arcade\">profiles<\/a>, such as popups, renderers, labels, and forms. Most of the time, the Arcade profiles that are part of the API are adequate for application requirements. However, sometimes developers want the ability to execute Arcade expressions in their own custom profiles. Starting at version 4.24, this is possible. That means you can use Arcade where you want, how you want. In your custom profile, you get to define the valid data inputs, functions, and return types in addition to the context where they can execute. For example, a web map might contain a popup that uses an expression to generate content. In your app, you could take the expression result and display it outside the Web Map, summarized in a chart. See it in action in this new <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/arcade-execute-chart\/\">sample<\/a>.<\/p>\n<h2><a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/#saving-feature-layers\">Saving feature layers<\/a><\/h2>\n<p>The June release of ArcGIS Online added the ability to save feature layers in the Map Viewer. That means that you can work with it just like a webmap &#8211; define the layer style, popup, filtering, clustering, etc, then save it as a new layer item (or replace an existing item) in Online, and load it in your apps by referencing the item ID. Everything the user configured comes alive when the layer item is loaded. The key difference with layer items is that they are individual layers rather than a sandwich of layers like web maps. So you can build apps that contain distinct mashups of layers, and still have many of the benefits of webmaps.<\/p>\n<p>This is all possible because feature layer saving was added to the API. So in addition to being able to save feature layers in the Map Viewer experience, you can allow your end users to make modifications to layers or create new layers and save them in ArcGIS Online and ArcGIS Enterprise.<\/p>\n<h2>Learn more<\/h2>\n<p>This is only a portion of the updates included in 4.24. There is so much more, like:<\/p>\n<ul>\n<li>We&#8217;ve moved to WebGL2 which\u00a0provides improved support for the capabilities of modern GPUs.\u00a0The API will use WebGL2 if your\u00a0<a href=\"https:\/\/caniuse.com\/webgl2\">browser supports it<\/a>, otherwise falls back to WebGL1.<\/li>\n<li>When hovering over a list of features within the popup, the corresponding feature will automatically be highlighted in the map.<\/li>\n<li>\n<div>The new <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/api-reference\/esri-layers-LineOfSightLayer.html\">LineOfSightLayer<\/a> allows to store line of sight analyses in web scenes and use them in slides for presentations.<\/div>\n<\/li>\n<\/ul>\n<p>Read the <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/release-notes\/\">release notes<\/a> to get the full scoop, and play around with the <a href=\"https:\/\/developers.arcgis.com\/javascript\/latest\/sample-code\/?tagged=4.24\">new samples<\/a>!<\/p>\n"}],"authors":[{"ID":4271,"user_firstname":"Julie","user_lastname":"Powell","nickname":"Julie Powell","user_nicename":"julie-powell","display_name":"Julie Powell","user_email":"julie_powell@esri.com","user_url":"","user_registered":"2018-03-02 00:15:51","user_description":"Julie Powell is Principal Product Manager for Esri's web development technologies. She works to ensure developers can be successful in building state of the art, purposeful solutions using ArcGIS software. \r\nJulie 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.","user_avatar":"<img data-del=\"avatar\" src='https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/03\/PhotoRoom-20220321_101413-3-213x200.png' class='avatar pp-user-avatar avatar-96 photo ' height='96' width='96'\/>"}],"related_articles":[{"ID":1760672,"post_author":"4271","post_date":"2022-11-09 21:14:01","post_date_gmt":"2022-11-10 05:14:01","post_content":"","post_title":"What's new in ArcGIS API for JavaScript (v4.25)","post_excerpt":"","post_status":"publish","comment_status":"open","ping_status":"closed","post_password":"","post_name":"whats-new-in-arcgis-api-for-javascript-v4-25","to_ping":"","pinged":"","post_modified":"2024-04-12 03:26:19","post_modified_gmt":"2024-04-12 10:26:19","post_content_filtered":"","post_parent":0,"guid":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=1760672","menu_order":0,"post_type":"blog","post_mime_type":"","comment_count":"0","filter":"raw"},{"ID":1519642,"post_author":"4271","post_date":"2022-03-23 10:10:51","post_date_gmt":"2022-03-23 17:10:51","post_content":"","post_title":"What's new in ArcGIS API for JavaScript (4.23)","post_excerpt":"","post_status":"publish","comment_status":"open","ping_status":"closed","post_password":"","post_name":"whats-new-in-arcgis-api-for-javascript-4-23","to_ping":"","pinged":"","post_modified":"2022-11-21 01:48:30","post_modified_gmt":"2022-11-21 09:48:30","post_content_filtered":"","post_parent":0,"guid":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=1519642","menu_order":0,"post_type":"blog","post_mime_type":"","comment_count":"0","filter":"raw"},{"ID":1422752,"post_author":"4271","post_date":"2021-12-09 10:20:08","post_date_gmt":"2021-12-09 18:20:08","post_content":"","post_title":"What's new in the ArcGIS API for JavaScript (version 4.22)","post_excerpt":"","post_status":"publish","comment_status":"open","ping_status":"closed","post_password":"","post_name":"whats-new-in-the-arcgis-api-for-javascript-version-4-22","to_ping":"","pinged":"","post_modified":"2024-04-12 03:58:08","post_modified_gmt":"2024-04-12 10:58:08","post_content_filtered":"","post_parent":0,"guid":"https:\/\/www.esri.com\/arcgis-blog\/?post_type=blog&#038;p=1422752","menu_order":0,"post_type":"blog","post_mime_type":"","comment_count":"0","filter":"raw"}],"card_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/card2.jpg","wide_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/banner4.jpg"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.9 (Yoast SEO v25.9) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What&#039;s new in ArcGIS API for JavaScript (version 4.24)<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What&#039;s new in ArcGIS API for JavaScript (version 4.24)\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\" \/>\n<meta property=\"og:site_name\" content=\"ArcGIS Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/esrigis\/\" \/>\n<meta property=\"article:modified_time\" content=\"2022-11-21T09:46:11+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@ESRI\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\"},\"author\":{\"name\":\"Julie Powell\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/3ef71df36f6aacca26eb2c7f65f15e88\"},\"headline\":\"What&#8217;s new in ArcGIS API for JavaScript (version 4.24)\",\"datePublished\":\"2022-06-23T20:03:29+00:00\",\"dateModified\":\"2022-11-21T09:46:11+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\"},\"wordCount\":9,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"keywords\":[\"charts\",\"JavaScript\",\"Web Mapping\"],\"articleSection\":[\"Announcements\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\",\"name\":\"What's new in ArcGIS API for JavaScript (version 4.24)\",\"isPartOf\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\"},\"datePublished\":\"2022-06-23T20:03:29+00:00\",\"dateModified\":\"2022-11-21T09:46:11+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.esri.com\/arcgis-blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What&#8217;s new in ArcGIS API for JavaScript (version 4.24)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#website\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"name\":\"ArcGIS Blog\",\"description\":\"Get insider info from Esri product teams\",\"publisher\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#organization\",\"name\":\"Esri\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png\",\"width\":400,\"height\":400,\"caption\":\"Esri\"},\"image\":{\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/esrigis\/\",\"https:\/\/x.com\/ESRI\",\"https:\/\/www.linkedin.com\/company\/5311\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/3ef71df36f6aacca26eb2c7f65f15e88\",\"name\":\"Julie Powell\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/03\/PhotoRoom-20220321_101413-3-213x200.png\",\"contentUrl\":\"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/03\/PhotoRoom-20220321_101413-3-213x200.png\",\"caption\":\"Julie Powell\"},\"description\":\"Julie Powell is Principal Product Manager for 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.\",\"sameAs\":[\"https:\/\/x.com\/JuliePowellGIS\"],\"url\":\"https:\/\/www.esri.com\/arcgis-blog\/author\/julie-powell\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What's new in ArcGIS API for JavaScript (version 4.24)","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24","og_locale":"en_US","og_type":"article","og_title":"What's new in ArcGIS API for JavaScript (version 4.24)","og_url":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24","og_site_name":"ArcGIS Blog","article_publisher":"https:\/\/www.facebook.com\/esrigis\/","article_modified_time":"2022-11-21T09:46:11+00:00","twitter_card":"summary_large_image","twitter_site":"@ESRI","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24#article","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24"},"author":{"name":"Julie Powell","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/3ef71df36f6aacca26eb2c7f65f15e88"},"headline":"What&#8217;s new in ArcGIS API for JavaScript (version 4.24)","datePublished":"2022-06-23T20:03:29+00:00","dateModified":"2022-11-21T09:46:11+00:00","mainEntityOfPage":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24"},"wordCount":9,"commentCount":0,"publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"keywords":["charts","JavaScript","Web Mapping"],"articleSection":["Announcements"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24","url":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24","name":"What's new in ArcGIS API for JavaScript (version 4.24)","isPartOf":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#website"},"datePublished":"2022-06-23T20:03:29+00:00","dateModified":"2022-11-21T09:46:11+00:00","breadcrumb":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.esri.com\/arcgis-blog\/products\/js-api-arcgis\/announcements\/whats-new-in-arcgis-api-for-javascript-version-4-24#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.esri.com\/arcgis-blog\/"},{"@type":"ListItem","position":2,"name":"What&#8217;s new in ArcGIS API for JavaScript (version 4.24)"}]},{"@type":"WebSite","@id":"https:\/\/www.esri.com\/arcgis-blog\/#website","url":"https:\/\/www.esri.com\/arcgis-blog\/","name":"ArcGIS Blog","description":"Get insider info from Esri product teams","publisher":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.esri.com\/arcgis-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.esri.com\/arcgis-blog\/#organization","name":"Esri","url":"https:\/\/www.esri.com\/arcgis-blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2018\/04\/Esri.png","width":400,"height":400,"caption":"Esri"},"image":{"@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/esrigis\/","https:\/\/x.com\/ESRI","https:\/\/www.linkedin.com\/company\/5311\/"]},{"@type":"Person","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/3ef71df36f6aacca26eb2c7f65f15e88","name":"Julie Powell","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.esri.com\/arcgis-blog\/#\/schema\/person\/image\/","url":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/03\/PhotoRoom-20220321_101413-3-213x200.png","contentUrl":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/03\/PhotoRoom-20220321_101413-3-213x200.png","caption":"Julie Powell"},"description":"Julie Powell is Principal Product Manager for 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.","sameAs":["https:\/\/x.com\/JuliePowellGIS"],"url":"https:\/\/www.esri.com\/arcgis-blog\/author\/julie-powell"}]}},"text_date":"June 23, 2022","author_name":"Julie Powell","author_page":"https:\/\/www.esri.com\/arcgis-blog\/author\/julie-powell","custom_image":"https:\/\/www.esri.com\/arcgis-blog\/app\/uploads\/2022\/06\/banner4.jpg","primary_product":"ArcGIS Maps SDK for JavaScript","tag_data":[{"term_id":30821,"name":"charts","slug":"charts","term_group":0,"term_taxonomy_id":30821,"taxonomy":"post_tag","description":"","parent":0,"count":46,"filter":"raw"},{"term_id":24921,"name":"JavaScript","slug":"javascript","term_group":0,"term_taxonomy_id":24921,"taxonomy":"post_tag","description":"","parent":0,"count":151,"filter":"raw"},{"term_id":23221,"name":"Web Mapping","slug":"web-mapping","term_group":0,"term_taxonomy_id":23221,"taxonomy":"post_tag","description":"","parent":0,"count":28,"filter":"raw"}],"category_data":[{"term_id":37101,"name":"Announcements","slug":"announcements","term_group":0,"term_taxonomy_id":37101,"taxonomy":"category","description":"","parent":0,"count":1964,"filter":"raw"}],"product_data":[{"term_id":36831,"name":"ArcGIS Maps SDK for JavaScript","slug":"js-api-arcgis","term_group":0,"term_taxonomy_id":36831,"taxonomy":"product","description":"","parent":36601,"count":363,"filter":"raw"},{"term_id":36601,"name":"Developers","slug":"developers","term_group":0,"term_taxonomy_id":36601,"taxonomy":"product","description":"","parent":0,"count":763,"filter":"raw"}],"primary_product_link":"https:\/\/www.esri.com\/arcgis-blog\/?s=#&products=js-api-arcgis","_links":{"self":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/1615042","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/users\/4271"}],"replies":[{"embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/comments?post=1615042"}],"version-history":[{"count":0,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/blog\/1615042\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/media?parent=1615042"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/categories?post=1615042"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/tags?post=1615042"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/industry?post=1615042"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/www.esri.com\/arcgis-blog\/wp-json\/wp\/v2\/product?post=1615042"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}