more correct syntax and AI instructions
This commit is contained in:
@@ -5,13 +5,15 @@ weight: 30
|
||||
type: "docs"
|
||||
---
|
||||
|
||||
The `array` function and its methods handle array creation and manipulation.
|
||||
The `array` function is an intrinsic (always available, no `use()` needed). It is **polymorphic** — its behavior depends on the type of the first argument.
|
||||
|
||||
## Creation
|
||||
## From a Number
|
||||
|
||||
Create an array of a given size.
|
||||
|
||||
### array(number)
|
||||
|
||||
Create an array of specified size, filled with `null`.
|
||||
All elements initialized to `null`.
|
||||
|
||||
```javascript
|
||||
array(3) // [null, null, null]
|
||||
@@ -19,24 +21,36 @@ array(3) // [null, null, null]
|
||||
|
||||
### array(number, initial)
|
||||
|
||||
Create an array with initial values.
|
||||
All elements initialized to a value. If initial is a function, it is called for each element (passed the index if arity >= 1).
|
||||
|
||||
```javascript
|
||||
array(3, 0) // [0, 0, 0]
|
||||
array(3, i => i * 2) // [0, 2, 4]
|
||||
```
|
||||
|
||||
## From an Array
|
||||
|
||||
Copy, map, concat, or slice.
|
||||
|
||||
### array(array)
|
||||
|
||||
Copy an array.
|
||||
Copy an array (mutable).
|
||||
|
||||
```javascript
|
||||
var copy = array(original)
|
||||
```
|
||||
|
||||
### array(array, function)
|
||||
|
||||
Map — call function with each element, collect results.
|
||||
|
||||
```javascript
|
||||
array([1, 2, 3], x => x * 2) // [2, 4, 6]
|
||||
```
|
||||
|
||||
### array(array, from, to)
|
||||
|
||||
Slice an array.
|
||||
Slice — extract a sub-array. Negative indices count from end.
|
||||
|
||||
```javascript
|
||||
array([1, 2, 3, 4, 5], 1, 4) // [2, 3, 4]
|
||||
@@ -45,31 +59,36 @@ array([1, 2, 3], -2) // [2, 3]
|
||||
|
||||
### array(array, another)
|
||||
|
||||
Concatenate arrays.
|
||||
Concatenate two arrays.
|
||||
|
||||
```javascript
|
||||
array([1, 2], [3, 4]) // [1, 2, 3, 4]
|
||||
```
|
||||
|
||||
### array(object)
|
||||
## From a Record
|
||||
|
||||
Get keys of an object.
|
||||
### array(record)
|
||||
|
||||
Get the keys of a record as an array of text.
|
||||
|
||||
```javascript
|
||||
array({a: 1, b: 2}) // ["a", "b"]
|
||||
```
|
||||
|
||||
## From Text
|
||||
|
||||
### array(text)
|
||||
|
||||
Split text into grapheme clusters.
|
||||
Split text into individual characters (grapheme clusters). This is the standard way to iterate over characters in a string.
|
||||
|
||||
```javascript
|
||||
array("hello") // ["h", "e", "l", "l", "o"]
|
||||
array("ƿit") // ["ƿ", "i", "t"]
|
||||
```
|
||||
|
||||
### array(text, separator)
|
||||
|
||||
Split text by separator.
|
||||
Split text by a separator string.
|
||||
|
||||
```javascript
|
||||
array("a,b,c", ",") // ["a", "b", "c"]
|
||||
@@ -77,7 +96,7 @@ array("a,b,c", ",") // ["a", "b", "c"]
|
||||
|
||||
### array(text, length)
|
||||
|
||||
Split text into chunks.
|
||||
Dice text into chunks of a given length.
|
||||
|
||||
```javascript
|
||||
array("abcdef", 2) // ["ab", "cd", "ef"]
|
||||
@@ -91,13 +110,13 @@ Iterate over elements.
|
||||
|
||||
```javascript
|
||||
array.for([1, 2, 3], function(el, i) {
|
||||
log.console(i, el)
|
||||
print(i, el)
|
||||
})
|
||||
|
||||
// With early exit
|
||||
array.for([1, 2, 3, 4], function(el) {
|
||||
if (el > 2) return true
|
||||
log.console(el)
|
||||
print(el)
|
||||
}, false, true) // prints 1, 2
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user