@arcgis/coding-components
Version:
Contains components for editing code in different languages. The currently supported languages are html, css, json, TypeScript, JavaScript, and Arcade.
1 lines • 740 kB
JSON
[{"id":"constants","title":"Các hằng số","items":[{"type":"constant","name":"infinity","bundle":"core","sinceVersion":"1.0","link":"https://developers.arcgis.com/arcade/function-reference/constants/#infinity","description":"Biểu thị một giá trị lớn hơn bất kỳ số nào khác. `-Infinity` cũng có thể được sử dụng như một giá trị nhỏ hơn bất kỳ số nào.","examples":"\n**Ví dụ**\n\nTính toán tối đa bốn giá trị trường\n\n```arcade\nvar values = [ $feature.field1, $feature.field2, $feature.field3, $feature.field4 ];\nvar maxValue = -Infinity;\n\nfor(var i in values){\n maxValue = IIF(values[i] > maxValue, values[i], maxValue);\n}\n\nreturn maxValue;\n```\n\n","completion":{"label":"Infinity","detail":"Infinity","insertText":"Infinity","insertTextMode":2,"insertTextFormat":1,"kind":21,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.0](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nBiểu thị một giá trị lớn hơn bất kỳ số nào khác. `-Infinity` cũng có thể được sử dụng như một giá trị nhỏ hơn bất kỳ số nào."}}},{"type":"constant","name":"pi","bundle":"core","sinceVersion":"1.0","link":"https://developers.arcgis.com/arcade/function-reference/constants/#pi","description":"Giá trị của chu vi vòng tròn chia cho đường kính của nó, khoảng `3,14159`.","examples":"\n**Ví dụ**\n\nTrả về diện tích của đối tượng hình tròn\n\n```arcade\nvar r = $feature.radius;\nPI * r * r;\n```\n\n","completion":{"label":"PI","detail":"PI","insertText":"PI","insertTextMode":2,"insertTextFormat":1,"kind":21,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.0](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nGiá trị của chu vi vòng tròn chia cho đường kính của nó, khoảng `3,14159`."}}},{"type":"constant","name":"textformatting.backwardslash","bundle":"core","sinceVersion":"1.0","link":"https://developers.arcgis.com/arcade/function-reference/constants/#textformatting.backwardslash","description":"Chèn một ký tự dấu gạch chéo ngược `\\` vào văn bản.","examples":"\n**Ví dụ**\n\nTrả về '\\\\\\serverName\\foo\\bar'\n\n```arcade\nTextFormatting.BackwardSlash + TextFormatting.BackwardSlash + $feature.FILE_PATH\n```\n\n","completion":{"label":"TextFormatting.BackwardSlash","detail":"TextFormatting.BackwardSlash","insertText":"TextFormatting.BackwardSlash","insertTextMode":2,"insertTextFormat":1,"kind":21,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.0](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nChèn một ký tự dấu gạch chéo ngược `\\` vào văn bản."}}},{"type":"constant","name":"textformatting.doublequote","bundle":"core","sinceVersion":"1.0","link":"https://developers.arcgis.com/arcade/function-reference/constants/#textformatting.doublequote","description":"Chèn một dấu ngoặc kép `\\\"` vào văn bản.","examples":"\n**Ví dụ**\n\nTrả về 'Nicholas \\\"Nick\\\" Anderson'\n\n```arcade\n$feature.NAME + \" \" + TextFormatting.DoubleQuote + $feature.ALIAS + TextFormatting.DoubleQuote + \" \" + $feature.SURNAME\n```\n\n","completion":{"label":"TextFormatting.DoubleQuote","detail":"TextFormatting.DoubleQuote","insertText":"TextFormatting.DoubleQuote","insertTextMode":2,"insertTextFormat":1,"kind":21,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.0](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nChèn một dấu ngoặc kép `\\\"` vào văn bản."}}},{"type":"constant","name":"textformatting.forwardslash","bundle":"core","sinceVersion":"1.0","link":"https://developers.arcgis.com/arcade/function-reference/constants/#textformatting.forwardslash","description":"Chèn một ký tự gạch chéo về phía trước `/` vào văn bản.","examples":"\n**Ví dụ**\n\nTrả về '151/low'\n\n```arcade\n$feature.POP_DENSITY + TextFormatting.ForwardSlash + $feature.CLASS\n```\n\n","completion":{"label":"TextFormatting.ForwardSlash","detail":"TextFormatting.ForwardSlash","insertText":"TextFormatting.ForwardSlash","insertTextMode":2,"insertTextFormat":1,"kind":21,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.0](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nChèn một ký tự gạch chéo về phía trước `/` vào văn bản."}}},{"type":"constant","name":"textformatting.newline","bundle":"core","sinceVersion":"1.0","link":"https://developers.arcgis.com/arcade/function-reference/constants/#textformatting.newline","description":"Chèn một dòng mới hoặc dấu ngắt dòng vào văn bản. Nhãn có nhiều dòng **KHÔNG** được hỗ trợ cho JavaScript trong API ArcGIS 3.x cũng như trong Trình xem Bản đồ Cổ điển trên ArcGIS Online.","examples":"\n**Ví dụ**\n\nTrả về \"T2N R1W\"\n\n```arcade\n\"T\" + $feature.TOWNSHIP + TextFormatting.NewLine + \"R\" + $feature.RANGE\n```\n\n","completion":{"label":"TextFormatting.NewLine","detail":"TextFormatting.NewLine","insertText":"TextFormatting.NewLine","insertTextMode":2,"insertTextFormat":1,"kind":21,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.0](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nChèn một dòng mới hoặc dấu ngắt dòng vào văn bản. Nhãn có nhiều dòng **KHÔNG** được hỗ trợ cho JavaScript trong API ArcGIS 3.x cũng như trong Trình xem Bản đồ Cổ điển trên ArcGIS Online."}}},{"type":"constant","name":"textformatting.singlequote","bundle":"core","sinceVersion":"1.0","link":"https://developers.arcgis.com/arcade/function-reference/constants/#textformatting.singlequote","description":"Chèn một dấu nháy đơn `'` vào văn bản.","examples":"\n**Ví dụ**\n\nTrả về \\\"Nicholas 'Nick' Anderson\\\"\n\n```arcade\n$feature.NAME + \" \" + TextFormatting.SingleQuote + $feature.ALIAS + TextFormatting.SingleQuote + \" \" + $feature.SURNAME\n```\n\n","completion":{"label":"TextFormatting.SingleQuote","detail":"TextFormatting.SingleQuote","insertText":"TextFormatting.SingleQuote","insertTextMode":2,"insertTextFormat":1,"kind":21,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.0](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nChèn một dấu nháy đơn `'` vào văn bản."}}}]},{"id":"array_functions","title":"Các hàm mảng","items":[{"type":"function","name":"all","bundle":"core","sinceVersion":"1.16","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#all","description":"Cho biết liệu tất cả phần tử trong mảng cho trước có vượt qua được kiểm tra từ hàm đã cung cấp hay không. Trả về giá trị `true` nếu hàm trả về giá trị `true` cho tất cả các mục trong mảng đầu vào.","examples":"\n**Ví dụ**\n\nTrả về giá trị `false` vì có một số phần tử trong dãy đầu vào không vượt qua bài kiểm tra `isEven`\n\n```arcade\n// isEven is used to test if each element in the array is even\n// it returns true if the element is divisible by two, false if is not\nfunction isEven(value) { return value % 2 == 0 }\n// The isEven function will execute for each element in the array,\n// returning the following values: false, true, false, true, false\n// Since some of the values in the array did not pass the test\n// (return true), the return value will be false\nAll([1,2,3,4,5], isEven)\n```\n\nSử dụng hàm Arcade `isEmpty` hiện có làm `testFunction`. Việc này hợp lệ vì `isEmpty` nhận một thông số duy nhất và trả về một giá trị boolean. Biểu thức này trả về giá trị `true` nếu tất cả trường đều trống.\n\n```arcade\nvar myArray = [ $feature.field1, $feature.field2, $feature.field3, $feature.field4];\nAll(myArray, isEmpty)\n```\n\n","completion":{"label":"All","detail":"All(inputArray, testFunction) -> Boolean","insertText":"All(${1:inputArray_}, ${2:testFunction_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.16](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nCho biết liệu tất cả phần tử trong mảng cho trước có vượt qua được kiểm tra từ hàm đã cung cấp hay không. Trả về giá trị `true` nếu hàm trả về giá trị `true` cho tất cả các mục trong mảng đầu vào.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Dãy đầu vào để kiểm tra.\n- **testFunction**: [Function](https://developers.arcgis.com/arcade/guide/logic/#user-defined-functions) - Hàm này được sử dụng để kiểm tra từng phần tử trong mảng `testFunction(value: Any) -> Boolean`. Hàm này phải trả về giá trị truthy nếu phần tử vượt qua kiểm tra. Hàm này có thể là một hàm do người dùng xác định hoặc một hàm Arcade cốt lõi được xác định với thông số sau:\n\n - **value**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Thể hiện giá trị của một phần tử trong mảng.\n\n**Giá trị trả về**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean) \n`true` nếu hàm kiểm tra trả về giá trị truthy cho tất cả các phần tử."}},"parametersInfo":{"min":2,"max":2}},{"type":"function","name":"any","bundle":"core","sinceVersion":"1.16","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#any","description":"Kiểm tra xem có bất kỳ phần tử nào trong một mảng cho trước vượt qua được kiểm tra từ hàm đã cung cấp hay không. Trả về giá trị `true` nếu hàm trả về giá trị `true` cho ít nhất một mục trong mảng đầu vào.","examples":"\n**Ví dụ**\n\nTrả về giá trị `true` vì có ít nhất một phần tử trong dãy đầu vào vượt qua bài kiểm tra `isEven`.\n\n```arcade\n// isEven is used to test if each element in the array is even\n// it returns true if the element is divisible by two, false if is not\nfunction isEven(value) { return value % 2 == 0 } \n// The isEven function will execute for each element in the array,\n// returning the following values: false, true, false, true, false\n// Since at least one value in the array passed the test\n// (return true), the return value will be true\nAny([1,2,3,4,5], isEven)\n```\n\nSử dụng hàm Arcade `isEmpty` hiện có làm `testFunction`. Việc này hợp lệ vì `isEmpty` nhận một thông số duy nhất và trả về một giá trị boolean. Biểu thức này trả về giá trị `true` nếu có bất kỳ trường nào trống.\n\n```arcade\nvar myArray = [ $feature.field1, $feature.field2, $feature.field3, $feature.field4];\nAny(myArray, isEmpty)\n```\n\n","completion":{"label":"Any","detail":"Any(inputArray, testFunction) -> Boolean","insertText":"Any(${1:inputArray_}, ${2:testFunction_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.16](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nKiểm tra xem có bất kỳ phần tử nào trong một mảng cho trước vượt qua được kiểm tra từ hàm đã cung cấp hay không. Trả về giá trị `true` nếu hàm trả về giá trị `true` cho ít nhất một mục trong mảng đầu vào.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Dãy đầu vào để kiểm tra.\n- **testFunction**: [Function](https://developers.arcgis.com/arcade/guide/logic/#user-defined-functions) - Hàm này được sử dụng để kiểm tra từng phần tử trong mảng `testFunction(value: Any) -> Boolean`. Hàm này phải trả về giá trị truthy nếu phần tử vượt qua kiểm tra. Hàm này có thể là một hàm do người dùng xác định hoặc một hàm Arcade cốt lõi được xác định với thông số sau:\n\n - **value**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Thể hiện giá trị của một phần tử trong mảng.\n\n**Giá trị trả về**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean) \n`true` nếu hàm kiểm tra trả về giá trị truthy cho bất kỳ phần tử nào."}},"parametersInfo":{"min":2,"max":2}},[{"type":"function","name":"array","bundle":"core","sinceVersion":"1.12","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#array1","description":"Trả về một chuỗi mới có chiều dài cho trước.","examples":"\n**Ví dụ**\n\nTrả về chuỗi `[null, null, null, null, null]`.\n\n```arcade\nArray(5)\n```\n\nTrả về `[\\\"xin chào\\\",\\\"xin chào\\\"]`\n\n```arcade\nArray(2, \"hello\")\n```\n\nTrả về chuỗi `[1,1,1]`.\n\n```arcade\nArray(3, 1)\n```\n\n","completion":{"label":"Array","detail":"Array(arrayLength, defaultValue?) -> Array<Any>","insertText":"Array(${1:arrayLength_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.12](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTrả về một chuỗi mới có chiều dài cho trước.\n\n**Thông số**\n\n- **arrayLength**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - Chiều dài mong muốn của chuỗi mới.\n- **defaultValue** (_Optional_): [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Giá trị cho mỗi phần tử trong chuỗi. Nếu không có giá trị nào được chỉ định, giá trị mặc định sẽ là `null`.\n\n**Giá trị trả về**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)>"}},"parametersInfo":{"min":1,"max":2}},{"type":"function","name":"array","bundle":"core","sinceVersion":"1.23","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#array2","description":"Trả về một bản shallow copy hoặc deep copy của mảng đầu vào.","examples":"\n**Ví dụ**\n\nTạo shallow copy của mảng đầu vào\n\n```arcade\nvar person1 = {\n firstName: \"Jane\",\n lastName: \"Doe\"\n};\nvar person2 = {\n firstName: \"John\",\n lastName: \"Smith\"\n};\nvar people = [ person1, person2 ];\n// create a shallow copy of the array\nvar copiedArray = Array(people);\npeople[0] == copiedArray[0];\n// returns true\n// this is a shallow copy of the array, so the elements share the same references\n```\n\nTạo deep copy của mảng đầu vào\n\n```arcade\nvar deepCopy = Array(people, true);\npeople[0] == deepCopy[0]\n// returns false\n// this is a deep copy of the array, so the elements do NOT share the same references\n```\n\n","completion":{"label":"Array","detail":"Array(inputArray, deep?) -> Array<Any>","insertText":"Array(${1:inputArray_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.23](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTrả về một bản shallow copy hoặc deep copy của mảng đầu vào.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Mảng cần sao chép.\n- **deep** (_Optional_): [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean) - Khi giá trị là `true`, tạo deep copy của mỗi phần tử trong mảng đầu vào, nghĩa là các phần tử trong mảng đầu ra sẽ không dùng chung tham chiếu với các phần tử của mảng đầu vào. Giá trị mặc định là `false`.\n\n**Giá trị trả về**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)>"}},"parametersInfo":{"min":1,"max":2}}],{"type":"function","name":"back","bundle":"core","sinceVersion":"1.12","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#back","description":"Trả về phần tử cuối cùng của một mảng. Nếu mảng đầu vào trống thì không thể đánh giá biểu thức.","examples":"\n**Ví dụ**\n\nTrả về giá trị `'gray'`.\n\n```arcade\nvar colors = ['orange', 'purple', 'gray']\nBack(colors)\n```\n\n","completion":{"label":"Back","detail":"Back(inputArray) -> Any","insertText":"Back(${1:inputArray_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.12](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTrả về phần tử cuối cùng của một mảng. Nếu mảng đầu vào trống thì không thể đánh giá biểu thức.\n\n**Tham số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Chuỗi để lấy giá trị cuối cùng từ đó.\n\n**Giá trị trả về**: [Any](https://developers.arcgis.com/arcade/guide/types/#any)"}},"parametersInfo":{"min":1,"max":1}},{"type":"function","name":"count","bundle":"core","sinceVersion":"1.0","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#count","description":"Trả về số lượng mục trong mảng.","examples":"\n**Ví dụ**\n\nTrả về 6\n\n```arcade\nCount([12,21,32,44,58,63])\n```\n\n","completion":{"label":"Count","detail":"Count(value) -> Number","insertText":"Count(${1:value_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.0](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTrả về số lượng mục trong mảng.\n\n**Tham số**\n\n- **value**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Một mảng để thực hiện phép tính.\n\n**Giá trị trả về**: [Number](https://developers.arcgis.com/arcade/guide/types/#number)"}},"parametersInfo":{"min":1,"max":1}},[{"type":"function","name":"defaultvalue","bundle":"core","sinceVersion":"1.26","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#defaultvalue1","description":"Trả về giá trị mặc định cụ thể nếu chỉ mục trong mảng không tồn tại hoặc giá trị tại chỉ mục cụ thể là `null` hoặc giá trị văn bản trống.","examples":"\n**Ví dụ**\n\nMảng có giá trị tại chỉ mục cho trước\n\n```arcade\nvar a = [23,4,null,36,901]\nDefaultValue(a, 4, \"No data\");\n// returns 901\n```\n\nMảng không có giá trị tại chỉ mục cho trước\n\n```arcade\nvar a = [23,4,null,36,901]\nDefaultValue(a, 5, \"No data\");\n// returns \"No data\"\n```\n\nMảng có giá trị rỗng tại chỉ mục cho trước\n\n```arcade\nvar a = [23,4,null,36,901]\nDefaultValue(a, 2, \"No data\");\n// returns \"No data\"\n```\n\n","completion":{"label":"DefaultValue","detail":"DefaultValue(inputArray, index, defaultValue) -> Any","insertText":"DefaultValue(${1:inputArray_}, ${2:index_}, ${3:defaultValue_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTrả về giá trị mặc định cụ thể nếu chỉ mục trong mảng không tồn tại hoặc giá trị tại chỉ mục cụ thể là `null` hoặc giá trị văn bản trống.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Mảng đầu vào cần kiểm tra.\n- **index**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - Chỉ mục cần kiểm tra.\n- **defaultValue**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Trả về giá trị này nếu chỉ mục không tồn tại hoặc giá trị tại chỉ mục cụ thể là `null` hoặc giá trị văn bản trống.\n\n**Giá trị trả về**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) \nTrả về giá trị tại chỉ mục cụ thể nếu được xác định. Nếu không, trả về giá trị cụ thể tại `defaultValue`."}},"parametersInfo":{"min":3,"max":3}},{"type":"function","name":"defaultvalue","bundle":"core","sinceVersion":"1.26","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#defaultvalue2","description":"Kiểm tra xem chỉ mục lồng ghép nhiều mức sâu trong mảng đa chiều có giá trị hay không và trả về giá trị đó nếu có. Nếu không, hàm này trả về giá trị mặc định cụ thể nếu ít nhất một trong các chỉ mục hoặc khóa lồng ghép không tồn tại hoặc giá trị tại chỉ mục hoặc khóa cụ thể là `null` hoặc giá trị văn bản trống. Nhờ vậy, bạn có thể tìm hiểu sâu cấu trúc lồng ghép trong một bước thay vì phải kiểm tra giá trị trong từng mảng.","examples":"\n**Ví dụ**\n\nMảng có giá trị tại chỉ mục lồng ghép\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nDefaultValue(a, [2, 3], \"No data\");\n// returns 1\n```\n\nMảng không có giá trị tại chỉ mục lồng ghép\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nDefaultValue(a, [2, 10], \"No data\");\n// returns \"No data\"\n```\n\nMảng không có giá trị tại chỉ mục gốc\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nDefaultValue(a, [10, 3], \"No data\");\n// returns \"No data\"\n```\n\nMảng trong từ điển có giá trị lồng ghép\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n interval: 1,\n intervalUnit: \"days\",\n weather: {\n precipitation: {\n type: \"rain\",\n values: [0.4, 0, 0, null, 0.1, 0.8, 1],\n unit: \"inches\"\n },\n temperature: {\n values: [50, 50, 51, 52, 55, 49, 51],\n unit: \"f\"\n },\n }\n}\n\nvar a = [ data, data2, data3 ]\nDefaultValue(a, [0, \"weather\",\"precipitation\",\"values\", 6], \"No data\");\n// returns 1\n```\n\n","completion":{"label":"DefaultValue","detail":"DefaultValue(inputArray, keys, defaultValue) -> Any","insertText":"DefaultValue(${1:inputArray_}, ${2:keys_}, ${3:defaultValue_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nKiểm tra xem chỉ mục lồng ghép nhiều mức sâu trong mảng đa chiều có giá trị hay không và trả về giá trị đó nếu có. Nếu không, hàm này trả về giá trị mặc định cụ thể nếu ít nhất một trong các chỉ mục hoặc khóa lồng ghép không tồn tại hoặc giá trị tại chỉ mục hoặc khóa cụ thể là `null` hoặc giá trị văn bản trống. Nhờ vậy, bạn có thể tìm hiểu sâu cấu trúc lồng ghép trong một bước thay vì phải kiểm tra giá trị trong từng mảng.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Mảng đầu vào cần kiểm tra.\n- **keys**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Number](https://developers.arcgis.com/arcade/guide/types/#number) \\| [Text](https://developers.arcgis.com/arcade/guide/types/#text)> - Mảng khóa hoặc chỉ mục cần kiểm tra trong từng mức cấu trúc bộ chứa.\n- **defaultValue**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Trả về giá trị này nếu ít nhất một trong các chỉ mục hoặc khóa không tồn tại hoặc giá trị tại khóa cụ thể là `null` hoặc giá trị văn bản trống.\n\n**Giá trị trả về**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) \nTrả về giá trị tại chỉ mục hoặc khóa cụ thể nếu được xác định. Nếu không, trả về giá trị cụ thể tại `defaultValue`."}},"parametersInfo":{"min":3,"max":3}}],[{"type":"function","name":"distinct","bundle":"core","sinceVersion":"1.1","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#distinct1","description":"Trả về bộ giá trị riêng biệt hoặc duy nhất cho mảng giá trị.","examples":"\n**Ví dụ**\n\n\n\n```arcade\nDistinct([1,1,2,1,1,2,2,3,4,5])\n// Returns [1,2,3,4,5]\n```\n\n","completion":{"label":"Distinct","detail":"Distinct(values) -> Array<Any>","insertText":"Distinct(${1:values_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.1](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTrả về bộ giá trị riêng biệt hoặc duy nhất cho mảng giá trị.\n\n**Tham số**\n\n- **values**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Một dãy giá trị để thực hiện phép tính.\n\n**Giá trị trả về**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)>"}},"parametersInfo":{"min":1,"max":1}},{"type":"function","name":"distinct","bundle":"core","sinceVersion":"1.1","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#distinct2","description":"Trả về bộ giá trị riêng biệt hoặc duy nhất cho danh sách các giá trị.","examples":"\n**Ví dụ**\n\n\n\n```arcade\nDistinct('high','medium','low',0,'high','high','low')\n// Returns ['high','medium','low',0]\n```\n\n","completion":{"label":"Distinct","detail":"Distinct([value1, ..., valueN]?) -> Array<Any>","insertText":"Distinct($0)","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.1](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTrả về bộ giá trị riêng biệt hoặc duy nhất cho danh sách các giá trị.\n\n**Tham số**\n\n- **[value1, ..., valueN]** (_Optional_): [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Một danh sách các giá trị để thực hiện phép tính.\n\n**Giá trị trả về**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)>"}},"parametersInfo":{"min":0,"max":-1}}],{"type":"function","name":"erase","bundle":"core","sinceVersion":"1.12","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#erase","description":"Xóa bỏ một giá trị khỏi mảng tại chỉ mục cho trước. Các phần tử hiện có được đặt tại hoặc phía trên chỉ mục cho trước sẽ giảm xuống một giá trị chỉ mục. Kích cỡ mảng giảm đi một.","examples":"\n**Ví dụ**\n\n\n\n```arcade\nvar colors = ['orange', 'purple', 'gray']\nErase(colors, 1)\n// colors = ['orange','gray']\n```\n\n\n\n```arcade\nvar colors = ['orange', 'purple', 'gray']\nErase(colors, -1)\n// colors = ['orange','purple']\n```\n\n","completion":{"label":"Erase","detail":"Erase(inputArray, index) -> Null","insertText":"Erase(${1:inputArray_}, ${2:index_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.12](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nXóa bỏ một giá trị khỏi mảng tại chỉ mục cho trước. Các phần tử hiện có được đặt tại hoặc phía trên chỉ mục cho trước sẽ giảm xuống một giá trị chỉ mục. Kích cỡ mảng giảm đi một.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Chuỗi để xóa giá trị ra khỏi.\n- **index**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - Chỉ mục của giá trị để xóa khỏi chuỗi. Nếu một chỉ mục âm được cung cấp thì chỉ mục đó sẽ được sử dụng làm phần bù từ phần cuối của mảng.\n\n**Giá trị trả về**: Null"}},"parametersInfo":{"min":2,"max":2}},{"type":"function","name":"filter","bundle":"core","sinceVersion":"1.16","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#filter","description":"Tạo một mảng mới với các phần tử được lọc từ mảng đầu vào mà vượt qua được kiểm tra từ hàm đã cung cấp.","examples":"\n**Ví dụ**\n\nTrả về một mảng mới bao gồm các phần tử thỏa mãn bộ lọc `isEven`.\n\n```arcade\nfunction isEven(i) { return i % 2 == 0 } \nFilter([1,2,3,4,5], isEven) // Returns [2,4]\n// Since 2 and 4 are even, they are the only values\n// included in the output array.\n```\n\nSử dụng hàm Arcade `isEmpty` hiện có trong `filterFunction`. Trả về một mảng mới của các trường không trống.\n\n```arcade\nvar myArray = [ $feature.field1, $feature.field2, $feature.field3, $feature.field4];\n\nfunction isNotEmpty(value){\n return !isEmpty(value);\n}\nFilter(myArray, isNotEmpty)\n// Returns only values that are defined,\n// excluding empty values from the result\n```\n\n","completion":{"label":"Filter","detail":"Filter(inputArray, filterFunction) -> Array<Any>","insertText":"Filter(${1:inputArray_}, ${2:filterFunction_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.16](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTạo một mảng mới với các phần tử được lọc từ mảng đầu vào mà vượt qua được kiểm tra từ hàm đã cung cấp.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Dãy đầu vào để lọc.\n- **filterFunction**: [Function](https://developers.arcgis.com/arcade/guide/logic/#user-defined-functions) - Hàm này được sử dụng để lọc phần tử trong mảng `filterFunction(value: Any) -> Boolean`. Hàm này phải trả về giá trị truthy nếu phần tử vượt qua kiểm tra. Hàm này có thể là hàm do người dùng xác định hoặc hàm Arcade cốt lõi được xác định với thông số sau:\n\n - **value**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Thể hiện giá trị của một phần tử trong mảng.\n\n**Giá trị trả về**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> \nTrả về một mảng kèm tất cả phần tử trong mảng vượt qua hàm kiểm tra."}},"parametersInfo":{"min":2,"max":2}},{"type":"function","name":"first","bundle":"core","sinceVersion":"1.0","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#first","description":"Trả về phần tử đầu tiên trong mảng. Trả về `null` nếu mảng trống.","examples":"\n**Ví dụ**\n\nin 'orange'\n\n```arcade\nFirst(['orange', 'purple', 'gray'])\n```\n\n","completion":{"label":"First","detail":"First(inputArray) -> Any","insertText":"First(${1:inputArray_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.0](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTrả về phần tử đầu tiên trong mảng. Trả về `null` nếu mảng trống.\n\n**Tham số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Mảng để trả về mục đầu tiên.\n\n**Giá trị trả về**: [Any](https://developers.arcgis.com/arcade/guide/types/#any)"}},"parametersInfo":{"min":1,"max":1}},{"type":"function","name":"front","bundle":"core","sinceVersion":"1.12","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#front","description":"Trả về phần tử đầu tiên của mảng. Nếu mảng đầu vào trống thì không thể đánh giá biểu thức.","examples":"\n**Ví dụ**\n\nTrả về giá trị `'orange'`.\n\n```arcade\nvar colors = ['orange', 'purple', 'gray']\nFront(colors)\n```\n\n","completion":{"label":"Front","detail":"Front(inputArray) -> Any","insertText":"Front(${1:inputArray_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.12](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTrả về phần tử đầu tiên của mảng. Nếu mảng đầu vào trống thì không thể đánh giá biểu thức.\n\n**Tham số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Mảng để nhận giá trị đầu tiên từ đó.\n\n**Giá trị trả về**: [Any](https://developers.arcgis.com/arcade/guide/types/#any)"}},"parametersInfo":{"min":1,"max":1}},[{"type":"function","name":"hasvalue","bundle":"core","sinceVersion":"1.26","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#hasvalue1","description":"Cho biết mảng có giá trị tại chỉ mục cho trước hay không.","examples":"\n**Ví dụ**\n\nMảng có giá trị tại chỉ mục cho trước\n\n```arcade\nvar a = [23,4,null,36,901]\nHasValue(a, 4);\n// returns true\n```\n\nMảng không có giá trị tại chỉ mục cho trước\n\n```arcade\nvar a = [23,4,null,36,901]\nHasValue(a, 5);\n// returns false\n```\n\nMảng có giá trị rỗng tại chỉ mục cho trước\n\n```arcade\nvar a = [23,4,null,36,901]\nHasValue(a, 2);\n// returns false\n```\n\n","completion":{"label":"HasValue","detail":"HasValue(inputArray, index) -> Boolean","insertText":"HasValue(${1:inputArray_}, ${2:index_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nCho biết mảng có giá trị tại chỉ mục cho trước hay không.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Mảng cần kiểm tra.\n- **index**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - Chỉ mục cần kiểm tra.\n\n**Giá trị trả về**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"}},"parametersInfo":{"min":2,"max":2}},{"type":"function","name":"hasvalue","bundle":"core","sinceVersion":"1.26","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#hasvalue2","description":"Kiểm tra xem chỉ mục lồng ghép nhiều mức sâu trong mảng đa chiều có giá trị hay không. Nhờ vậy, bạn có thể tìm hiểu sâu cấu trúc lồng ghép trong một bước thay vì phải kiểm tra giá trị trong từng mảng. Trả về `true` nếu chỉ mục tại từng mức trong cấu trúc tồn tại và chứa giá trị không phải là giá trị rỗng.","examples":"\n**Ví dụ**\n\nMảng có giá trị tại chỉ mục lồng ghép\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nHasValue(a, [2, 4]);\n// returns true\n```\n\nMảng không có giá trị tại chỉ mục lồng ghép\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nHasValue(a, [2, 10]);\n// returns false\n```\n\nMảng không có giá trị tại chỉ mục gốc\n\n```arcade\nvar a = [23,4,[0,0,1,1,0],36,901]\nHasValue(a, [10, 5]);\n// returns false\n```\n\nMảng trong từ điển có giá trị lồng ghép\n\n```arcade\nvar data = {\n time: Date(2024, 0, 24, 12),\n interval: 1,\n intervalUnit: \"days\",\n weather: {\n precipitation: {\n type: \"rain\",\n values: [0.4, 0, 0, null, 0.1, 0.8, 1],\n unit: \"inches\"\n },\n temperature: {\n values: [50, 50, 51, 52, 55, 49, 51],\n unit: \"f\"\n },\n }\n}\n\nvar a = [ data, data2, data3 ]\nif(HasValue(a, [0, \"weather\",\"precipitation\",\"values\", 6])){\n // This check succeeds so the value will be returned\n return a[0].weather.precipitation.values[6];\n // returns 1\n}\n```\n\n","completion":{"label":"HasValue","detail":"HasValue(inputArray, indexes) -> Boolean","insertText":"HasValue(${1:inputArray_}, ${2:indexes_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.26](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nKiểm tra xem chỉ mục lồng ghép nhiều mức sâu trong mảng đa chiều có giá trị hay không. Nhờ vậy, bạn có thể tìm hiểu sâu cấu trúc lồng ghép trong một bước thay vì phải kiểm tra giá trị trong từng mảng. Trả về `true` nếu chỉ mục tại từng mức trong cấu trúc tồn tại và chứa giá trị không phải là giá trị rỗng.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Mảng cần kiểm tra.\n- **indexes**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Number](https://developers.arcgis.com/arcade/guide/types/#number) \\| [Text](https://developers.arcgis.com/arcade/guide/types/#text)> - Mảng khóa hoặc chỉ mục cần kiểm tra trong từng mức cấu trúc.\n\n**Giá trị trả về**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"}},"parametersInfo":{"min":2,"max":2}}],{"type":"function","name":"includes","bundle":"core","sinceVersion":"1.12","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#includes","description":"Xác định xem một chuỗi có chứa một giá trị đã cho hay không. Trả về giá trị `true` nếu tìm thấy giá trị trong chuỗi.","examples":"\n**Ví dụ**\n\nTrả về `true`.\n\n```arcade\nIncludes(['orange', 'purple', 'gray'], 'purple')\n```\n\nTrả về `false`.\n\n```arcade\nIncludes(['orange', 'purple', 'gray'], 'red')\n```\n\n","completion":{"label":"Includes","detail":"Includes(inputArray, value) -> Boolean","insertText":"Includes(${1:inputArray_}, ${2:value_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.12](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nXác định xem một chuỗi có chứa một giá trị đã cho hay không. Trả về giá trị `true` nếu tìm thấy giá trị trong chuỗi.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Chuỗi đầu vào\n- **value**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Giá trị để tìm kiếm trong chuỗi đã cho.\n\n**Giá trị trả về**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean)"}},"parametersInfo":{"min":2,"max":2}},{"type":"function","name":"indexof","bundle":"core","sinceVersion":"1.0","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#indexof","description":"Trả về vị trí chỉ mục bắt đầu từ 0 của mục đầu vào trong mảng. Nếu `item` không tồn tại, thì trả về `-1`.","examples":"\n**Ví dụ**\n\nin 2\n\n```arcade\nvar num = [1,2,3,4];\nreturn indexof(num, 3);\n```\n\n","completion":{"label":"IndexOf","detail":"IndexOf(inputArray, item) -> Number","insertText":"IndexOf(${1:inputArray_}, ${2:item_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.0](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTrả về vị trí chỉ mục bắt đầu từ 0 của mục đầu vào trong mảng. Nếu `item` không tồn tại, thì trả về `-1`.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Mảng để tìm kiếm.\n- **item**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Mục để định vị trong mảng.\n\n**Giá trị trả về**: [Number](https://developers.arcgis.com/arcade/guide/types/#number)"}},"parametersInfo":{"min":2,"max":2}},{"type":"function","name":"insert","bundle":"core","sinceVersion":"1.12","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#insert","description":"Chèn một giá trị mới vào một mảng tại một chỉ mục đã cho. Các phần tử hiện có được đặt tại hoặc phía trên chỉ mục cho trước sẽ tăng lên một giá trị chỉ mục. Kích cỡ mảng tăng thêm một.","examples":"\n**Ví dụ**\n\n\n\n```arcade\nvar colors = ['orange', 'purple', 'gray']\nInsert(colors, 1, 'yellow')\n// colors = ['orange','yellow','purple','gray']\n```\n\n\n\n```arcade\nvar colors = ['orange', 'purple', 'gray']\nInsert(colors, -1, 'yellow')\n// colors = ['orange','purple','yellow','gray']\n```\n\n","completion":{"label":"Insert","detail":"Insert(inputArray, index, value) -> Null","insertText":"Insert(${1:inputArray_}, ${2:index_}, ${3:value_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.12](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nChèn một giá trị mới vào một mảng tại một chỉ mục đã cho. Các phần tử hiện có được đặt tại hoặc phía trên chỉ mục cho trước sẽ tăng lên một giá trị chỉ mục. Kích cỡ mảng tăng thêm một.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Chuỗi để chèn giá trị mới vào.\n- **index**: [Number](https://developers.arcgis.com/arcade/guide/types/#number) - Chỉ mục của mảng để chèn giá trị mới vào. Chỉ mục là 0 sẽ chèn giá trị vào đầu mảng. Một chỉ mục bằng với kích thước của mảng sẽ chèn giá trị vào cuối mảng. Chỉ mục lớn hơn kích thước của mảng sẽ gây ra lỗi. Nếu một chỉ mục âm được cung cấp thì chỉ mục đó sẽ được sử dụng làm phần bù từ phần cuối của mảng.\n- **value**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Giá trị để chèn vào chuỗi.\n\n**Giá trị trả về**: Null"}},"parametersInfo":{"min":3,"max":3}},{"type":"function","name":"map","bundle":"core","sinceVersion":"1.16","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#map","description":"Tạo một dãy mới dựa trên kết quả của việc gọi một hàm được cung cấp trên mỗi phần tử trong dãy đầu vào.","examples":"\n**Ví dụ**\n\nChuyển đổi tất cả các phần tử trong mảng từ độ Fahrenheit sang độ Celsius và trả về các phần tử này trong một mảng mới.\n\n```arcade\n// This function will take in values from the input array and convert them to Celsius\nfunction toCelsius(f) {\n return Round((f - 32) * 5/9, 2)\n}\n// The toCelsius function executes for each each item\n// in the input array.\n// Map returns the resulting array of converted values.\nMap([82, 67, 96, 55, 34], toCelsius)\n// returns [27.78, 19.44, 35.56, 12.78, 1.11]\n```\n\nChuyển đổi các đối tượng ngày tháng sang văn bản được định dạng\n\n```arcade\nvar dates = [ Date(1996, 11, 10), Date(1995, 1, 6), Date(1992, 2, 27), Date(1990, 10, 2)];\nfunction formatDates(dateVal) { return Text(dateVal, 'MMM D, Y') }\nMap(dates, formatDates);\n// returns ['Dec 10, 1996', 'Feb 6, 1995', 'Mar 27, 1992', 'Nov 2, 1990']\n```\n\n","completion":{"label":"Map","detail":"Map(inputArray, mappingFunction) -> Array<Any>","insertText":"Map(${1:inputArray_}, ${2:mappingFunction_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.16](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nTạo một dãy mới dựa trên kết quả của việc gọi một hàm được cung cấp trên mỗi phần tử trong dãy đầu vào.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Dãy đầu vào để thành lập bản đồ.\n- **mappingFunction**: [Function](https://developers.arcgis.com/arcade/guide/logic/#user-defined-functions) - Hàm này để gọi từng phần tử trong mảng `mappingFunction(value: Any) -> Any`. Hàm phải trả về một mục mới sẽ là một phần của mảng được trả về. Hàm này có thể là một hàm do người dùng xác định hoặc một hàm Arcade cốt lõi được xác định với thông số sau:\n\n - **value**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Thể hiện giá trị của một phần tử trong mảng.\n\n**Giá trị trả về**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> \nCác mục được trả về bởi hàm thành lập bản đồ."}},"parametersInfo":{"min":2,"max":2}},{"type":"function","name":"none","bundle":"core","sinceVersion":"1.16","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#none","description":"Kiểm tra xem có phải không có phần tử nào trong mảng cho trước vượt qua được kiểm tra từ hàm đã cung cấp hay không. Trả về giá trị `true` nếu `testFunction` trả về giá trị `false` cho tất cả các mục trong mảng đầu vào.","examples":"\n**Ví dụ**\n\nTrả về giá trị `false` vì có một số phần tử trong mảng đầu vào vượt qua kiểm tra` isEven`\n\n```arcade\n// isEven is used to test if each element in the array is even\n// it returns true if the element is divisible by two, false if is not\nfunction isEven(value) { return value % 2 == 0 } \n// The isEven function will execute for each element in the array,\n// returning the following values: false, true, false, true, false\n// Since at least one value in the array passed the test\n// (return true), the return value will be false\nNone([1,2,3,4,5], isEven)\n```\n\nSử dụng hàm Arcade `isEmpty` hiện có làm `testFunction`. Việc này hợp lệ vì `isEmpty` nhận một thông số duy nhất và trả về một giá trị boolean. Biểu thức này trả về giá trị `true` nếu không có trường nào trống.\n\n```arcade\nvar myArray = [ $feature.field1, $feature.field2, $feature.field3, $feature.field4];\nNone(myArray, isEmpty)\n```\n\n","completion":{"label":"None","detail":"None(inputArray, testFunction) -> Boolean","insertText":"None(${1:inputArray_}, ${2:testFunction_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.16](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nKiểm tra xem có phải không có phần tử nào trong mảng cho trước vượt qua được kiểm tra từ hàm đã cung cấp hay không. Trả về giá trị `true` nếu `testFunction` trả về giá trị `false` cho tất cả các mục trong mảng đầu vào.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Dãy đầu vào để kiểm tra.\n- **testFunction**: [Function](https://developers.arcgis.com/arcade/guide/logic/#user-defined-functions) - Hàm này để kiểm tra từng phần tử trong mảng `testFunction(value: Any) -> Boolean`. Hàm này phải trả về giá trị falsy nếu phần tử không vượt qua kiểm tra. Hàm này có thể là một hàm do người dùng xác định hoặc một hàm Arcade cốt lõi được xác định với thông số sau:\n\n - **value**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Thể hiện giá trị của một phần tử trong mảng.\n\n**Giá trị trả về**: [Boolean](https://developers.arcgis.com/arcade/guide/types/#boolean) \n`true` nếu tất cả phần tử trong mảng không vượt qua hàm kiểm tra."}},"parametersInfo":{"min":2,"max":2}},{"type":"function","name":"pop","bundle":"core","sinceVersion":"1.12","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#pop","description":"Xóa bỏ và trả về phân tử ở cuối chuỗi. Nếu chuỗi trống thì sẽ báo lỗi.","examples":"\n**Ví dụ**\n\nTrả về giá trị 'gray'. Chuỗi đầu vào bây giờ sẽ bằng `['orange', 'purple']`.\n\n```arcade\nPop(['orange', 'purple', 'gray'])\n```\n\n","completion":{"label":"Pop","detail":"Pop(inputArray) -> Any","insertText":"Pop(${1:inputArray_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.12](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nXóa bỏ và trả về phân tử ở cuối chuỗi. Nếu chuỗi trống thì sẽ báo lỗi.\n\n**Tham số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Chuỗi đầu vào mà từ đó phần tử cuối cùng sẽ bị xóa và trả về.\n\n**Giá trị trả về**: [Any](https://developers.arcgis.com/arcade/guide/types/#any)"}},"parametersInfo":{"min":1,"max":1}},{"type":"function","name":"push","bundle":"core","sinceVersion":"1.12","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#push","description":"Thêm một phần tử vào cuối chuỗi và trả về giá trị độ dài mới của chuỗi.","examples":"\n**Ví dụ**\n\nTrả về giá trị 4. Chuỗi đầu vào bây giờ sẽ bằng `['orange', 'purple', 'gray', 'red']`.\n\n```arcade\nPush(['orange', 'purple', 'gray'], 'red')\n```\n\n","completion":{"label":"Push","detail":"Push(inputArray, value) -> Number","insertText":"Push(${1:inputArray_}, ${2:value_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.12](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nThêm một phần tử vào cuối chuỗi và trả về giá trị độ dài mới của chuỗi.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Chuỗi để đẩy phần tử vào\n- **value**: [Any](https://developers.arcgis.com/arcade/guide/types/#any) - Giá trị để thêm vào làm phần tử cuối cùng của chuỗi đầu vào.\n\n**Giá trị trả về**: [Number](https://developers.arcgis.com/arcade/guide/types/#number)"}},"parametersInfo":{"min":2,"max":2}},{"type":"function","name":"reduce","bundle":"core","sinceVersion":"1.16","link":"https://developers.arcgis.com/arcade/function-reference/array_functions/#reduce","description":"Thực hiện một hàm \\\"rút gọn\\\" được cung cấp trên mỗi phần tử trong mảng, chuyển đến giá trị trả về từ phép tính của phần tử trước đó.","examples":"\n**Ví dụ**\n\nKhông có thông số `initialValue`, hai phần tử đầu tiên của mảng `cities` được chuyển vào hàm thêm dưới dạng đối số.\n\n```arcade\nvar cities = [{\n name: 'Columbus',\n pop: 913921\n}, {\n name: 'Cincinnati',\n pop: 307266\n}, {\n name: 'Dayton',\n pop: 140343\n}, {\n name: 'Cleveland',\n pop: 376599\n}];\n// the first time this function is called it will take the first two elements of the array as x and y\n// The subsequent times the function is executed, it will take the return value\n// from the previous function call as x and the next array value as y\nfunction mostPopulated(city1, city2) {\n IIf (city1.pop > city2.pop, city1, city2)\n}\nvar largestCity = Reduce(cities, mostPopulated)\nConsole(largestCity.name + ' is the biggest city in the list with a population of ' + largestCity.pop)\n// Columbus is the biggest city in the list with a population of 913921\n```\n\nVì thông số `initialValue` được thiết lập, giá trị đó sẽ là đối số đầu tiên của hàm (`city1`) và phần tử đầu tiên của `cities` sẽ là đối số thứ hai của hàm (`city2`).\n\n```arcade\nvar los_angeles = { name: 'Los Angeles', pop: 3898747 }\n// since an initialValue is provided, it will be passed into the maxPop function as x\n// and the first value of the array will be passed in as y for the initial function call\n// The subsequent times the function is executed, it will take the return value\n// from the previous function call as x and the next array value as y\nvar largestCity = Reduce(cities, mostPopulated, los_angeles)\nConsole(largestCity.name + ' is the biggest city in the list with a population of ' + largestCity.pop)\n// Los Angeles is the biggest city in the list with a population of 3898747\n```\n\n","completion":{"label":"Reduce","detail":"Reduce(inputArray, reducerFunction, initialValue?) -> Any","insertText":"Reduce(${1:inputArray_}, ${2:reducerFunction_})$0","insertTextMode":2,"insertTextFormat":2,"kind":3,"documentation":{"kind":"markdown","value":"**[Kể từ phiên bản 1.16](https://developers.arcgis.com/arcade/guide/version-matrix)**\n\nThực hiện một hàm \\\"rút gọn\\\" được cung cấp trên mỗi phần tử trong mảng, chuyển đến giá trị trả về từ phép tính của phần tử trước đó.\n\n**Thông số**\n\n- **inputArray**: [Array](https://developers.arcgis.com/arcade/guide/types/#array)<[Any](https://developers.arcgis.com/arcade/guide/types/#any)> - Dãy đầu vào để rút gọn.\n- **reducerFunction**: [Function](https://developers.arcgis.com/arc