List
Type parameters
▪ T: Serializable
▪ T
▪ T
▪ T
▪ T
▪ T
▪ T: Serializable
▪ T
▪ T
▪ T
▪ T
▪ T
Hierarchy
Indexable
- [ n: number]: T
Index
Constructors
Properties
Methods
- [Symbol.iterator]
- [Symbol.unscopables]
- add
- concat
- copyWithin
- create
- entries
- every
- fill
- filter
- find
- findBy
- findById
- findIndex
- first
- forEach
- getBy
- getById
- getByIdOrThrow
- getByOrThrow
- getListKey
- getSerializableType
- getSource
- hasBy
- hasById
- hasSame
- includes
- indexOf
- join
- keys
- last
- lastIndexOf
- map
- overrideBy
- pop
- push
- reduce
- reduceRight
- removeBy
- removeById
- replaceBy
- replaceById
- reverse
- shift
- slice
- some
- sort
- splice
- toLocaleString
- toPlainObject
- toString
- unshift
- values
Constructors
constructor
+ new List(source
: Serializable, listKey
: string, serializableType
: Type, serializables
: any[]): List
Creates an instance of List
that behaves like instance of Array
.
Creates an instance of List
that behaves like instance of Array
.
Parameters:
Name | Type | Description |
---|---|---|
source | Serializable | Source Serializable , from which list is referenced. |
listKey | string | Property key under which list is assigned on source. |
serializableType | Type | Serializable type constructor for which list is dedicated for. |
serializables | any[] | - |
Returns: List
Properties
length
• length: number
Gets or sets the length of the array. This is a number one higher than the highest element defined in an array.
Static
Array
▪ Array: ArrayConstructor
Methods
[Symbol.iterator]
▸ [Symbol.iterator](): IterableIterator‹T›
Inherited from List.[Symbol.iterator]
Overrides List.[Symbol.iterator]
Iterator
Returns: IterableIterator‹T›
[Symbol.unscopables]
▸ [Symbol.unscopables](): object
Inherited from List.[Symbol.unscopables]
Overrides List.[Symbol.unscopables]
Returns an object whose properties have the value 'true' when they will be absent when used in a 'with' statement.
Returns: object
copyWithin: boolean
entries: boolean
fill: boolean
find: boolean
findIndex: boolean
keys: boolean
values: boolean
add
▸ add(element
: T): void
Adds already instantiated Serializable
to list.
throws
{ValidationError}
Thrown if the Serializable
is not matching list's Serializable
type.
throws
{IdentifiableAlreadyExistsError}
Thrown if the Identifiable
with same identifier already exists on list.
throws
{ElementAlreadyExistError}
Thrown if the same Serializable
already exists on list(use List.prototype.push
instead).
example
Parameters:
Name | Type | Description |
---|---|---|
element | T | Serializable instance matching type for which list is dedicated. |
Returns: void
concat
▸ concat(...items
: ConcatArray‹T›[]): T[]
Combines two or more arrays.
Parameters:
Name | Type | Description |
---|---|---|
...items | ConcatArray‹T›[] | Additional items to add to the end of array1. |
Returns: T[]
▸ concat(...items
: T | ConcatArray‹T›[]): T[]
Combines two or more arrays.
Parameters:
Name | Type | Description |
---|---|---|
...items | T | ConcatArray‹T›[] | Additional items to add to the end of array1. |
Returns: T[]
copyWithin
▸ copyWithin(target
: number, start
: number, end?
: number): this
Inherited from List.copyWithin
Overrides List.copyWithin
Returns the this object after copying a section of the array identified by start and end to the same array starting at position target
Parameters:
Name | Type | Description |
---|---|---|
target | number | If target is negative, it is treated as length+target where length is the length of the array. |
start | number | If start is negative, it is treated as length+start. If end is negative, it is treated as length+end. |
end? | number | If not specified, length of the this object is used as its default value. |
Returns: this
create
▸ create(...sources
: Record‹string, any›[]): T
Creates Serializable
from multiple data sources and adds it to list.
throws
{ValidationError}
Thrown if the properties does not match property types on Serializable
.
example
Parameters:
Name | Type | Description |
---|---|---|
...sources | Record‹string, any›[] | Source(s) of properties(like Object.assign). |
Returns: T
Instance of newly created and added Serializable
.
entries
▸ entries(): IterableIterator‹[number, T]›
Returns an iterable of key, value pairs for every entry in the array
Returns: IterableIterator‹[number, T]›
every
▸ every(callbackfn
: function, thisArg?
: any): boolean
Determines whether all the members of an array satisfy the specified test.
Parameters:
▪ callbackfn: function
A function that accepts up to three arguments. The every method calls the callbackfn function for each element in the array until the callbackfn returns a value which is coercible to the Boolean value false, or until the end of the array.
▸ (value
: T, index
: number, array
: T[]): unknown
Parameters:
Name | Type |
---|---|
value | T |
index | number |
array | T[] |
▪Optional
thisArg: any
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
Returns: boolean
fill
▸ fill(value
: T, start?
: number, end?
: number): this
Returns the this object after filling the section identified by start and end with value
Parameters:
Name | Type | Description |
---|---|---|
value | T | value to fill array section with |
start? | number | index to start filling the array at. If start is negative, it is treated as length+start where length is the length of the array. |
end? | number | index to stop filling the array at. If end is negative, it is treated as length+end. |
Returns: this
filter
▸ filter‹S›(callbackfn
: function, thisArg?
: any): S[]
Returns the elements of an array that meet the condition specified in a callback function.
Type parameters:
▪ S: T
Parameters:
▪ callbackfn: function
A function that accepts up to three arguments. The filter method calls the callbackfn function one time for each element in the array.
▸ (value
: T, index
: number, array
: T[]): value is S
Parameters:
Name | Type |
---|---|
value | T |
index | number |
array | T[] |
▪Optional
thisArg: any
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
Returns: S[]
▸ filter(callbackfn
: function, thisArg?
: any): T[]
Returns the elements of an array that meet the condition specified in a callback function.
Parameters:
▪ callbackfn: function
A function that accepts up to three arguments. The filter method calls the callbackfn function one time for each element in the array.
▸ (value
: T, index
: number, array
: T[]): unknown
Parameters:
Name | Type |
---|---|
value | T |
index | number |
array | T[] |
▪Optional
thisArg: any
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
Returns: T[]
find
▸ find‹S›(predicate
: function, thisArg?
: any): S | undefined
Returns the value of the first element in the array where predicate is true, and undefined otherwise.
Type parameters:
▪ S: T
Parameters:
▪ predicate: function
find calls predicate once for each element of the array, in ascending order, until it finds one where predicate returns true. If such an element is found, find immediately returns that element value. Otherwise, find returns undefined.
▸ (this
: void, value
: T, index
: number, obj
: T[]): value is S
Parameters:
Name | Type |
---|---|
this | void |
value | T |
index | number |
obj | T[] |
▪Optional
thisArg: any
If provided, it will be used as the this value for each invocation of predicate. If it is not provided, undefined is used instead.
Returns: S | undefined
▸ find(predicate
: function, thisArg?
: any): T | undefined
Parameters:
▪ predicate: function
▸ (value
: T, index
: number, obj
: T[]): unknown
Parameters:
Name | Type |
---|---|
value | T |
index | number |
obj | T[] |
▪Optional
thisArg: any
Returns: T | undefined
findBy
▸ findBy(key
: string, value
: any): T
alias
getByOrThrow
Parameters:
Name | Type |
---|---|
key | string |
value | any |
Returns: T
findById
▸ findById(id
: string | Stringifiable): T
alias
getOrThrow
Parameters:
Name | Type |
---|---|
id | string | Stringifiable |
Returns: T
findIndex
▸ findIndex(predicate
: function, thisArg?
: any): number
Returns the index of the first element in the array where predicate is true, and -1 otherwise.
Parameters:
▪ predicate: function
find calls predicate once for each element of the array, in ascending order, until it finds one where predicate returns true. If such an element is found, findIndex immediately returns that element index. Otherwise, findIndex returns -1.
▸ (value
: T, index
: number, obj
: T[]): unknown
Parameters:
Name | Type |
---|---|
value | T |
index | number |
obj | T[] |
▪Optional
thisArg: any
If provided, it will be used as the this value for each invocation of predicate. If it is not provided, undefined is used instead.
Returns: number
first
▸ first(): T | undefined
Returns first Serializable
in list.
example
Returns: T | undefined
Returns Serializable
instance.
forEach
▸ forEach(callbackfn
: function, thisArg?
: any): void
Performs the specified action for each element in an array.
Parameters:
▪ callbackfn: function
A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the array.
▸ (value
: T, index
: number, array
: T[]): void
Parameters:
Name | Type |
---|---|
value | T |
index | number |
array | T[] |
▪Optional
thisArg: any
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
Returns: void
getBy
▸ getBy(key
: string, value
: any): T | undefined
Returns Serializable
from list by custom key and matching value.
example
Parameters:
Name | Type | Description |
---|---|---|
key | string | Property name(key) from Serializable . |
value | any | Property value that should be matched. |
Returns: T | undefined
Returns Serializable
instance if found, else undefined
.
getById
▸ getById(id
: string | Stringifiable): T | undefined
Returns Serializable
instance from list by its identifier.
example
Parameters:
Name | Type | Description |
---|---|---|
id | string | Stringifiable | Identifier of Serializable . |
Returns: T | undefined
Returns Serializable
instance if found, else undefined
.
getByIdOrThrow
▸ getByIdOrThrow(id
: string | Stringifiable): T
Returns Serializable
from list by its identifier or throws.
throws
{ElementNotFoundError}
Thrown if the Serializable
with identifier can't be found on list.
example
Parameters:
Name | Type | Description |
---|---|---|
id | string | Stringifiable | Identifier of Serializable . |
Returns: T
Returns Serializable
instance if found, else throws.
getByOrThrow
▸ getByOrThrow(key
: string, value
: any): T
Returns Serializable
from list by custom key and value or throws.
throws
{ElementNotFoundError}
Thrown if the Serializable
with key and value can't be matched on list.
example
Parameters:
Name | Type | Description |
---|---|---|
key | string | Property name(key) from Serializable . |
value | any | Property value that should be matched. |
Returns: T
Returns Serializable
instance if found, else throws.
getListKey
▸ getListKey(): string
Gets property key under which list is created on source.
Returns: string
Property key of the list as a string.
getSerializableType
▸ getSerializableType(): Type
Gets serializable type constructor for which this list is being made.
Returns: Type
Serializable
type constructor.
getSource
▸ getSource(): Serializable
Gets source for which list is made.
Returns: Serializable
Instance of Serializable
.
hasBy
▸ hasBy(key
: string, value
: any): boolean
Evaluates if list contains Serializable
by key and value.
example
Parameters:
Name | Type | Description |
---|---|---|
key | string | Property name(key) from Serializable . |
value | any | Property value that should be matched. |
Returns: boolean
Returns Serializable
instance if found, else undefined
.
hasById
▸ hasById(id
: string | Stringifiable): boolean
Evaluates if list contains Serializable
by its identifier.
example
Parameters:
Name | Type | Description |
---|---|---|
id | string | Stringifiable | Serializable identifier. |
Returns: boolean
Returns true
if Serializable
exists on list, else false
.
hasSame
▸ hasSame(element
: T): boolean
Evaluates if list contains same Serializable
by values.
example
Parameters:
Name | Type | Description |
---|---|---|
element | T | Serializable instance. |
Returns: boolean
Returns true
if Serializable
exists on list, else false
.
includes
▸ includes(searchElement
: T, fromIndex?
: number): boolean
Determines whether an array includes a certain element, returning true or false as appropriate.
Parameters:
Name | Type | Description |
---|---|---|
searchElement | T | The element to search for. |
fromIndex? | number | The position in this array at which to begin searching for searchElement. |
Returns: boolean
indexOf
▸ indexOf(searchElement
: T, fromIndex?
: number): number
Returns the index of the first occurrence of a value in an array.
Parameters:
Name | Type | Description |
---|---|---|
searchElement | T | The value to locate in the array. |
fromIndex? | number | The array index at which to begin the search. If fromIndex is omitted, the search starts at index 0. |
Returns: number
join
▸ join(separator?
: string): string
Adds all the elements of an array separated by the specified separator string.
Parameters:
Name | Type | Description |
---|---|---|
separator? | string | A string used to separate one element of an array from the next in the resulting String. If omitted, the array elements are separated with a comma. |
Returns: string
keys
▸ keys(): IterableIterator‹number›
Returns an iterable of keys in the array
Returns: IterableIterator‹number›
last
▸ last(): T | undefined
Returns last Serializable
in list.
example
Returns: T | undefined
Returns Serializable
instance.
lastIndexOf
▸ lastIndexOf(searchElement
: T, fromIndex?
: number): number
Inherited from List.lastIndexOf
Overrides List.lastIndexOf
Returns the index of the last occurrence of a specified value in an array.
Parameters:
Name | Type | Description |
---|---|---|
searchElement | T | The value to locate in the array. |
fromIndex? | number | The array index at which to begin the search. If fromIndex is omitted, the search starts at the last index in the array. |
Returns: number
map
▸ map‹U›(callbackfn
: function, thisArg?
: any): U[]
Calls a defined callback function on each element of an array, and returns an array that contains the results.
Type parameters:
▪ U
Parameters:
▪ callbackfn: function
A function that accepts up to three arguments. The map method calls the callbackfn function one time for each element in the array.
▸ (value
: T, index
: number, array
: T[]): U
Parameters:
Name | Type |
---|---|
value | T |
index | number |
array | T[] |
▪Optional
thisArg: any
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
Returns: U[]
overrideBy
▸ overrideBy(key
: string, value
: any, element
: T): void
Override existing Serializable
on list by specific key and matching value or adds it to list.
example
Parameters:
Name | Type | Description |
---|---|---|
key | string | Property name(key) from Serializable . |
value | any | Property value that should be matched. |
element | T | Serializable instance. |
Returns: void
pop
▸ pop(): T | undefined
Removes the last element from an array and returns it.
Returns: T | undefined
push
▸ push(...items
: T[]): number
Appends new elements to an array, and returns the new length of the array.
Parameters:
Name | Type | Description |
---|---|---|
...items | T[] | New elements of the Array. |
Returns: number
reduce
▸ reduce(callbackfn
: function): T
Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
Parameters:
▪ callbackfn: function
A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.
▸ (previousValue
: T, currentValue
: T, currentIndex
: number, array
: T[]): T
Parameters:
Name | Type |
---|---|
previousValue | T |
currentValue | T |
currentIndex | number |
array | T[] |
Returns: T
▸ reduce(callbackfn
: function, initialValue
: T): T
Parameters:
▪ callbackfn: function
▸ (previousValue
: T, currentValue
: T, currentIndex
: number, array
: T[]): T
Parameters:
Name | Type |
---|---|
previousValue | T |
currentValue | T |
currentIndex | number |
array | T[] |
▪ initialValue: T
Returns: T
▸ reduce‹U›(callbackfn
: function, initialValue
: U): U
Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
Type parameters:
▪ U
Parameters:
▪ callbackfn: function
A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.
▸ (previousValue
: U, currentValue
: T, currentIndex
: number, array
: T[]): U
Parameters:
Name | Type |
---|---|
previousValue | U |
currentValue | T |
currentIndex | number |
array | T[] |
▪ initialValue: U
If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
Returns: U
reduceRight
▸ reduceRight(callbackfn
: function): T
Inherited from List.reduceRight
Overrides List.reduceRight
Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
Parameters:
▪ callbackfn: function
A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.
▸ (previousValue
: T, currentValue
: T, currentIndex
: number, array
: T[]): T
Parameters:
Name | Type |
---|---|
previousValue | T |
currentValue | T |
currentIndex | number |
array | T[] |
Returns: T
▸ reduceRight(callbackfn
: function, initialValue
: T): T
Inherited from List.reduceRight
Overrides List.reduceRight
Parameters:
▪ callbackfn: function
▸ (previousValue
: T, currentValue
: T, currentIndex
: number, array
: T[]): T
Parameters:
Name | Type |
---|---|
previousValue | T |
currentValue | T |
currentIndex | number |
array | T[] |
▪ initialValue: T
Returns: T
▸ reduceRight‹U›(callbackfn
: function, initialValue
: U): U
Inherited from List.reduceRight
Overrides List.reduceRight
Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
Type parameters:
▪ U
Parameters:
▪ callbackfn: function
A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.
▸ (previousValue
: U, currentValue
: T, currentIndex
: number, array
: T[]): U
Parameters:
Name | Type |
---|---|
previousValue | U |
currentValue | T |
currentIndex | number |
array | T[] |
▪ initialValue: U
If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
Returns: U
removeBy
▸ removeBy(key
: string, value
: any): void
Removes Serializable
from list by key and value.
example
Parameters:
Name | Type | Description |
---|---|---|
key | string | Property name(key) from Serializable . |
value | any | Property value that should be matched. |
Returns: void
removeById
▸ removeById(id
: string | Stringifiable): void
Removes Serializable
from list by its identifier.
example
Parameters:
Name | Type | Description |
---|---|---|
id | string | Stringifiable | Identifier of Serializable . |
Returns: void
replaceBy
▸ replaceBy(key
: string, value
: any, element
: T): void
Replaces element by key and value.
example
Parameters:
Name | Type | Description |
---|---|---|
key | string | Property name(key) from Serializable . |
value | any | Property value that should be matched. |
element | T | Serializable instance matching type for which list is dedicated. |
Returns: void
replaceById
▸ replaceById(id
: string | Stringifiable, element
: T): void
Replaces element by identifier.
example
Parameters:
Name | Type | Description |
---|---|---|
id | string | Stringifiable | Identifier of Serializable . |
element | T | Serializable instance matching type for which list is dedicated. |
Returns: void
reverse
▸ reverse(): T[]
Reverses the elements in an Array.
Returns: T[]
shift
▸ shift(): T | undefined
Removes the first element from an array and returns it.
Returns: T | undefined
slice
▸ slice(start?
: number, end?
: number): T[]
Returns a section of an array.
Parameters:
Name | Type | Description |
---|---|---|
start? | number | The beginning of the specified portion of the array. |
end? | number | The end of the specified portion of the array. This is exclusive of the element at the index 'end'. |
Returns: T[]
some
▸ some(callbackfn
: function, thisArg?
: any): boolean
Determines whether the specified callback function returns true for any element of an array.
Parameters:
▪ callbackfn: function
A function that accepts up to three arguments. The some method calls the callbackfn function for each element in the array until the callbackfn returns a value which is coercible to the Boolean value true, or until the end of the array.
▸ (value
: T, index
: number, array
: T[]): unknown
Parameters:
Name | Type |
---|---|
value | T |
index | number |
array | T[] |
▪Optional
thisArg: any
An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
Returns: boolean
sort
▸ sort(compareFn?
: function): this
Sorts an array.
Parameters:
▪Optional
compareFn: function
Function used to determine the order of the elements. It is expected to return a negative value if first argument is less than second argument, zero if they're equal and a positive value otherwise. If omitted, the elements are sorted in ascending, ASCII character order.
▸ (a
: T, b
: T): number
Parameters:
Name | Type |
---|---|
a | T |
b | T |
Returns: this
splice
▸ splice(start
: number, deleteCount?
: number): T[]
Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements.
Parameters:
Name | Type | Description |
---|---|---|
start | number | The zero-based location in the array from which to start removing elements. |
deleteCount? | number | The number of elements to remove. |
Returns: T[]
▸ splice(start
: number, deleteCount
: number, ...items
: T[]): T[]
Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements.
Parameters:
Name | Type | Description |
---|---|---|
start | number | The zero-based location in the array from which to start removing elements. |
deleteCount | number | The number of elements to remove. |
...items | T[] | Elements to insert into the array in place of the deleted elements. |
Returns: T[]
toLocaleString
▸ toLocaleString(): string
Inherited from List.toLocaleString
Overrides List.toLocaleString
Returns a string representation of an array. The elements are converted to string using their toLocalString methods.
Returns: string
toPlainObject
▸ toPlainObject(): any[]
Converts list to array with plain objects.
Returns: any[]
Array with items converted to plain object.
toString
▸ toString(): string
Returns a string representation of an array.
Returns: string
unshift
▸ unshift(...items
: T[]): number
Inserts new elements at the start of an array.
Parameters:
Name | Type | Description |
---|---|---|
...items | T[] | Elements to insert at the start of the Array. |
Returns: number
values
▸ values(): IterableIterator‹T›
Returns an iterable of values in the array
Returns: IterableIterator‹T›