Skip to content

Latest commit

 

History

History
69 lines (62 loc) · 1.35 KB

README.md

File metadata and controls

69 lines (62 loc) · 1.35 KB

OpenWebProject Core/Array

contains

const arr = [1, 2, 3, 4, 5, 5];
contains(arr, e => e === 4)) -> true
contains(arr, e => e % 2 === 2)) -> true
contains(arr, e => e === 7) -> false

move

const arr = ["A", "B", "C", "D", "E"];
move(arr, 1, 3);
arr -> ["A", "C", "D", "B", "E"]

remove

const arr = [1, 2, 3, 4, 5, 5];
remove(arr, e => e % 2 === 0) -> [2, 4]
arr -> [1, 3, 5, 5]

sortBy

const arr = [
    { value: 5, name: "b"},
    { value: 2, name: "a"},
    { value: 5, name: "a"}
]
//Sort first on value(ascending) then name(descending)
sortBy(arr, "value", "-name");
arr -> [
    { value: 2, name: "a"},
    { value: 5, name: "b"},
    { value: 5, name: "a"}
]
//With the dot(.) operator you can sort on submembers
sortBy(arr, "values.value", "-obj.name");

sortByCallback

const arr = [
    { value: 5, name: "b"},
    { value: 2, name: "a"},
    { value: 5, name: "a"}
]
//Sort first on value(ascending) then name(descending)
arr.sort(sortByCallback("value", "-name"));
arr -> [
    { value: 2, name: "a"},
    { value: 5, name: "b"},
    { value: 5, name: "a"}
]

unique

const arr = [1, 2, 3, 4, 5, 5];
unique(arr) -> [1, 2, 3, 4, 5]

uniqueCallback

const arr = [1, 2, 3, 4, 5, 5];
arr.filter(uniqueCallback) -> [1, 2, 3, 4, 5]