Pure Conditions

Metody pomocnicze dla prostych warunków.

Instalacja

npm install pure-conditions

areArraysEqual (array1, array2)

Sprawdza czy tablice posiadają takie same elementy, w jakiejkolwiek kolejności.

areArraysEqual([1, 3, 2], [1, 2, 3])
<= true
areArraysEqual([1, 2, 3], [1, 2, 3])
<= true

areArraysStrictEqual (array1, array2)

Sprawdza czy tablice posiadają takie same elementy, w takiej samej kolejności

areArraysStrictEqual([1, 3, 2], [1, 2, 3])
<= false
areArraysStrictEqual([1, 2, 3], [1, 2, 3])
<= true

endsWith (string1, string2)

Sprawdza czy pierwszy łańcuch znaków kończy się drugim łańcuchem znaków.

endsWith("ban qux"m "qux")
<= true

exists (object)

Sprawdza czy obiekt jest zdefiniowany.

exists(myVariable)
<= false
exists({})
<= true

hasDuplicates (array)

Sprawdza czy tablica zawiera duplikaty.

hasDuplicates(["foo", "foo"])
<= true

hasExtension (string1, string2)

Sprawdza czy łańcuch znaków jest nazwą pliku audio.

hasExtension("foo.txt", "txt")
<= true

hasKeys (object)

Sprawdza czy przekazany obiekt posiada klucze.

hasKeys({ foo: "bar" })
<= true

hasLengthOf (value, number)

Sprawdza czy długość przekazanej wartości jest równa przekazanej liczbie.

hasLengthOf([1, 2], 2)
<= true

hasLengthOfAtLeast (value, number)

Sprawdza czy długość przekazanej wartości jest większa lub równa przekazanej liczbie.

hasLengthOfAtLeast([1, 2], 2)
<= true
hasLengthOfAtLeast([1, 2, 3], 2)
<= true

hasLengthOfAtMost (value, number)

Sprawdza czy długość przekazanej wartości jest mniejsza lub równa przekazanej liczbie.

hasLengthOfAtMost([1, 2, 3, 4, 5], 10)
<= true
hasLengthOfAtMost([1, 2, 3], 2)
<= false

hasNewLine (value)

Sprawdza czy łańcuch znaków zawiera znak nowej lini.

hasNewLine("foo bar")
<= true

hasNumber (value)

Sprawdza czy przekazana wartość zawiera przynajmniej jedną liczbę.

hasNumber([1, 2])
<= true
hasNumber({ foo: 1, bar: "baz" })
<= true

hasNumbers (value)

Sprawdza czy przekazana wartość zawiera więcej niż jedną liczbę.

hasNumber([1, 2])
<= true
hasNumber({ foo: 1, bar: "baz", ban: 2 })
<= true

hasTypeOf (value, string)

Sprawdza typ przekazanej wartości.

hasTypeOf(32, "number")
<= true

hasWhitespace (string)

Sprawdza czy łańcuch znaków zawiera spacje.

hasWhitespace("foo&nbsp;bar")
<= true
hasWhitespace("foo bar")
<= true

hasWords (string, number)

Sprawdza czy łańcuch znaków zawiera określoną liczbę wyrazów.

hasWords("foo bar baz", 3)
<= true
hasWords(myVariable)
<= true

have (value, number)

Sprawdza czy długość przekazanej wartości jest równa przekazanej liczbie.

have([1, 2, 3, 4, 5], 5)
<= true

haveLessThan (value, number)

Sprawdza czy długość przekazanej wartości jest większa niż przekazana liczba.

haveLessThan([1, 2, 3], 10)
<= true

haveMany (array)

Sprawdza czy tablica zawiera więcej niż jedną wartość.

haveMany([1, 2])
<= true

haveMoreThan (value, number)

Sprawdza czy długość przekazanej wartości jest większa niż przekazana liczba.

haveMoreThan([1, 2, 3, 4, 5], 4)
<= true

includes (value1, value2)

Sprawdza czy pierwsza wartość zawiera drugą.

includes("lorem ipsum", lorem)
<= true

isAlpha (string)

Sprawdza czy łańcuch znaków zawiera wyłącznie litery.

isAlpha("foo")
<= true
isAlpha("foo123")
<= false

isAlphaNumeric (string)

Sprawdza czy łańcuch znaków zawiera wyłącznie litery i cyfry.

isAlphaNumeric("foo")
<= true
isAlphaNumeric("foo123")
<= true

isAlternative (value1, value2)

Zwraca wartość logiczną z alternatywy pierwszej wartości oraz drugiej wartości.

isAlternative(0, 1)
<= true
isAlternative(1, 1)
<= true

isArray (value)

Sprawdza czy przekazana wartość jest tablicą.

isArray([])
<= true

isAudio (string)

Sprawdza czy łańcuch znaków jest nazwą pliku audio.

isAudio("foo.mp3")
<= true

isBetween (number1, number2, number3)

Sprawdza czy pierwsza liczba jest pomiędzy drugą a trzecią.

isBetween(10, 5, 20)
<= true

isBitwiseAlternative (value1, value2)

Zwraca wartość logiczną z alternatywy bitowej .

isBitwiseAlternative(1, 0)
<= true
isBitwiseAlternative(1, 1)
<= true

isBitwiseAlternativeNegation (value1, value2)

Zwraca wartość logiczną z alternatywy wykluczającej.

isBitwiseAlternativeNegation(1, 0)
<= true
isBitwiseAlternativeNegation(0, 1)
<= true

isBitwiseConjunction (value1, value2)

Zwraca wartość logiczną z koniunkcji bitowej .

isBitwiseConjunction(1, 1)
<= true

isBitwiseNegation (value)

Zwraca wartość logiczną z negacji bitowej.

isBitwiseNegation(0)
<= true

isBoolean (value)

Sprawdza czy przekazana wartość jest wartością typu logicznego.

isBoolean(true)
<= true
isBoolean(1)
<= false

isComputer ()

Sprawdza czy urządzenie jest komputerem (Szerokość okna przeglądarki wynosi przynajmniej 992px).

isComputer()
<= true

isConjunction (value1, value2)

Zwraca prawdę gdy obie z przekazanych wartości są prawdziwe.

isConjunction(1, 1)
<= true

isDate (value)

Sprawdza czy przekazana wartość datą.

isDate(new Date())
<= true

isDecimal (value)

Sprawdza czy przekazana wartość jest liczba dziesiętną.

isDecimal(2.5)
<= true

isDigit (value)

Sprawdza czy wartość jest cyfrą.

isDigit(2)
<= true
isDigit("2")
<= true

isDivisible (number1, number2)

Sprawdza czy jedna z liczb jest podzielna przez drugą.

isDivisible(10, 5)
<= true

isEmail (string)

Sprawdza czy łańcuch znaków jest adresem email.

isEmail("foobar@gmail.com")
<= true

isEmpty (value)

Sprawdza czy wartość jest pusta.

isEmpty([])
<= true
isEmpty({})
<= true

isEmptyArray (array)

Sprawdza czy tablica jest pusta.

isEmptyArray([])
<= true

isEmptyObject (object)

Sprawdza czy obiekt jest pusty.

isEmptyObject({})
<= true

isEmptySet (set)

Sprawdza czy zbiór jest pusty.

isEmptySet(new Set([]))
<= true

isEquals (value1, value2)

Sprawdza czy wartości są równe.

isEquals("foo", "foo")
<= true

isError (object)

Sprawdza czy przekazany obiekt jest instacją klasy Error.

isError(new Error("ValidationError"))
<= true

isEven (number)

Sprawdza czy liczba jest parzysta.

isEven(2)
<= true

isExclusiveAlternative (value1, value2)

Zwraca prawdę gdy jedna z przekazanych wartości jest prawdziwa, a druga fałszywa.

isExclusiveAlternative(1, 0)
<= true
isExclusiveAlternative(0, 1)
<= true

isExtensible (object)

Sprawdza czy przekazany obiekt może być rozszerzony o nowe właściwości.

isExtensible({})
<= true

isFalsy (value)

Sprawdza czy przekazana wartość, jest wartością fałszywą.

isFalsy(false)
<= true
isFalsy(null)
<= true

isFinite (number)

Sprawdza czy liczba jest skończona.

isFinite(100)
<= true

isFrozen (object)

Sprawdza czy obiekt jest zamrożony (nie można dodać, usunąć, zmienić właściwości obiektu).

isFrozen(Object.freeze({}))
<= true

isFunction (value)

Sprawdza czy przekazana wartość jest funkcją.

isFunction(function () {})
<= true

isGreaterThan (number1, number2)

Sprawdza czy pierwsza liczba jest większa od drugiej.

isGreaterThan(10, 5)
<= true

isGreaterThanOrEqual (value1, value2)

Sprawdza czy pierwsza wartośc jest większa lub równa drugiej wartości.

isGreaterThanOrEqual(42, 42)
<= true

isImage (string)

Sprawdza czy łańcuch znaków jest nazwą pliku zdjęcia.

isImage("foo.jpg")
<= true

isIn (value1, value2)

Sprawdza czy pierwsza wartość zawiera drugą.

isIn(5, [5, 10, 15])
<= true
isIn("5", "12345")
<= true

isInfinite (number)

Sprawdza czy liczba jest nieskończona.

isInfinite(Infinity)
<= true

isInstanceOf (object, constructor)

Sprawdza czy obiekt jest instacją danej klasy.

isInstanceOf(["foo", "bar"], Array)
<= true

isLaterThan (date1, date2)

Sprawdza czy jedna z dat jest późniejsza niż druga.

isLaterThan(new Date(2018, 4, 11), new Date(2018, 4, 1))
<= true

isLessThan (number1, number2)

Sprawdza czy pierwsza liczba jest mniejsza od drugiej.

isLessThan(2, 5)
<= true

isLessThanOrEqual (number1, number2)

Sprawdza czy pierwsza liczba jest mniejsza lub równa drugiej.

isLessThanOrEqual(3,5)
<= true

isMap (value)

Sprawdza czy przekazana wartość jest mapą.

isMap(new Map([ ["foo", "bar"] ]))
<= true

isMissing (object)

Sprawdza czy obiekt jest niezdefiniowany.

isMissing(myVariable)
<= true
isMissing({})
<= true

isMobile ()

Sprawdza czy urządzenie jest smartfonem (Szerokość okna przeglądarki wynosi maksymalnie 767 pikseli).

isMobile()
<= true

isMultiple (numbe1, number2)

Sprawdza czy jedna z przekazanych liczb jest wielokrotnością drugiej.

isMultiple(200, 100)
<= true

isNaN (value)

Sprawdza czy przekazana wartość jest równa NaN, a jej typ to Number.

isNaN(NaN)
<= true

isNegative (number)

Sprawdza czy liczba jest negatywna.

isNegative(-100)
<= true

isNull (value)

Sprawdza czy wartość jest null'em.

isNull(null)
<= true
isNull(0)
<= false

isNumber (value)

Sprawdza czy wartość jest liczbą.

isNumber(2)
<= true

isNumeric (value)

Sprawdza czy przekazana wartość jest wartością numeryczną (liczba lub łańcuch znaków, który można skonwertować na liczbę).

isNumeric(2)
<= true
isNumeric("2")
<= true

isObject (value)

Sprawdza czy przekazana wartość jest obiektem.

isObject({})
<= true
isObject(function () {})
<= true

isOdd (number)

Sprawdza czy liczba jest nieparzysta.

isOdd(1)
<= true

isPalindrome (string)

Sprawdza czy wartość jest palindromem.

isPalindrome("devil lived")
<= true

isPhone (string)

Sprawdza czy podany łańcuch jest prawidłowym numerem telefonu.

isPhone("+48 123 345 67")
<= true

isPlainObject (value)

Sprawdza czy przekazana wartość jest obiektem.

isPlainObject({})
<= true
isPlainObject([])
<= false

isPositive (number)

Sprawdza czy liczba jest dodatnia.

isPositive(100)
<= true

isPresent (value)

Sprawdza czy wartość jest obecna (różna od undefined).

isPresent({ foo: "bar" })
<= true
isPresent(null)
<= true

isPrime (number)

Sprawdza czy liczba jest liczbą pierwszą.

isPrime(13)
<= true

isRegExp (value)

Sprawdza czy wartość jest wyrażeniem regularnym.

isRegExp(/foo/)
<= true

isSealed (object)

Sprawdza czy obiekt jest zapieczętowany (nie można dodać i usunąć właściwości obiektu).

isSealed(Object.seal({}))
<= true

isSet (value)

Sprawdza czy przekazana wartość jest zbiorem.

isSet(new Set())
<= true

isSoonerThan (date1, date2)

Sprawdza czy jedna z dat jest wcześniejsza niż druga.

isSoonerThan(new Date(2018, 4, 1), new Date(2018, 4, 11))
<= true

isString (value)

Sprawdza czy przekazana wartość jest łańcuchem znaków.

isString("foo")
<= true

isSymbol (value)

Sprawdza czy przekazana wartość jest symbolem.

isSymbol(Symbol("foo"))
<= true

isTablet ()

Sprawdza czy urządzenie jest tabletem (Szerokość okna przeglądarki jest pomiędzy 768px a 991px).

isTablet()
<= true

isTruthy (value)

Sprawdza czy przekazana wartość, jest wartością prawdziwą.

isTruthy({})
<= true
isTruthy([])
<= true

isUndefined (value)

Sprawdza czy wartość jest niezdefiniowana.

isUndefined(undefined)
<= true

isUrl (string)

Sprawdza czy łańcuch znaków jest poprawnym adresem url.

isUrl("https://buxlabs.pl/narzędzia/js")
<= true

isVideo (string)

Sprawdza czy łańcuch znaków jest nazwą pliku video.

isVideo("foo.mkv")
<= true

isWeakMap (value)

Sprawdza czy przekazana wartość jest słabą mapą.

isWeakMap(new WeakMap())
<= true

isWeakSet (value)

Sprawdza czy przekazana wartość jest słabą zbiorem.

isWeakSet(new WeakSet())
<= true

matches (string, regExp)

Sprawdza czy łańcuch znaków posiada przekazana wyrażenie regularne.

matches("lorem ipsum", /ipsum/)
<= true

notEqual (value1, value2)

Sprawdza czy wartości są różne.

notEqual("foo", "bar")
<= true

respondsTo (object, string)

Sprawdza czy obiekt posiada funkcję, której nazwa została przekazana w łańcuchu znaków.

respondsTo({ foo: function () {} }, "foo")
<= true

startsWith (string1, string2)

Sprawdza czy pierwszy łańcuch znaków zaczyna się od drugiego.

startsWith("ban qux", "ban")
<= true