Aktywne Wpisy
tak-nie-wiem +148
Rewolucja w technologii mobilnej, która była... ale jednocześnie jej nie było.
Okolice lat 2007 - pozostaniemy jeszcze przy tym okresie - były czasami, gdy rynkiem mobilnym rządził system Symbian. I "rządził" to mało powiedziane, był niemalże monopolistą. Pojawiały się co prawda takie rozwiązania jak Windows CE Microsoftu (rok 2002), czy BlackBerry (także 2002), ale były to rozwiązania mimo wszystko niszowe.
Tymczasem w Mountain View - niewielkim mieście z pięknym widokiem na górę
Okolice lat 2007 - pozostaniemy jeszcze przy tym okresie - były czasami, gdy rynkiem mobilnym rządził system Symbian. I "rządził" to mało powiedziane, był niemalże monopolistą. Pojawiały się co prawda takie rozwiązania jak Windows CE Microsoftu (rok 2002), czy BlackBerry (także 2002), ale były to rozwiązania mimo wszystko niszowe.
Tymczasem w Mountain View - niewielkim mieście z pięknym widokiem na górę
Wontensso +8
Kurła od 3 miesięcy próbuje sprzedać działkę budowlaną 20 arów w lubuskim w okolicach gorzowa wlkp. Za dobrą cenę. Na prawdę fajna, przy lesie. Na wsi. Co jest nikt nie chce się budować? 10k odsłon na otodom i 1 telefon
#nieruchomosci
#budujzwykopem
#dom
#nieruchomosci
#budujzwykopem
#dom
return array.find(x => x.done) ?? null
? Tylko że jak później się okaże, że trzeba do obcej funkcji przekazaćstring | undefined
, a ja mamx: string | null
to teraz w drugą stronę będę pisać fn(x ?? undefined). Jest na to dobry patent?#javascript #typescript #webdev
A jeśli parametrem ma być ciąg, to przecież może być pusty ciąg zamiast nulla czy undefined.
function ifUndefinedMakeNull(variable) {
return typeof variable === 'undefined' ? null : variable
}
//ew
function ifUndefinedMakeNull(variable = null) {
return variable;
}
//i w drugą stronę
function ifNullReturnUndefined(variable) {
return variable === null ? undefined : variable;
}
Nie ma raczej uniwersalnego rozwiązania, ale tak sobie zwyczajnie ograniczysz powtarzalne sprawdzanie
np.
function oryginal(a) { //to przykładowo ciało importowanej funkcji
console.log(a);
}
function wrapper(fn, useNull) {
return (param) => {
const newParam = param ?? (useNull ? null : undefined);
return fn.call(null, newParam);
}
}
const copyNull = wrapper(oryginal,
https://github.com/Microsoft/TypeScript/wiki/Coding-guidelines#null-and-undefined
Natomiast ja osobiscie sie z tym nie zgadzam. Uwazam, ze lepiej uzywac je kontekstowo i tak robi tez API js.
Generalnie, undefined uzywamy tam gdzie np mamy opcjonalne pole w obiekcie itd. Generalnie cos czego nie ma.
Null uzywamy w momencie, gdy *brak wartosci jest jedna z mozliwosci*. Przykladowo, document.querySelector moze zwrocic Ci node albo null gdy nie znajdzie.
@larvaexotech: Dla odmiany Array.find zwróci undefined gdy niczego nie znajdzie. Ja nie widzę reguły.
Czy w takim razie jak przychodzi odpowiedź z backendu i np. user nie wybrał płci to będzie
gender null
? Niektóre API pomijają pola, których nie ma. Czyli w zależności od sposobu odpowiedzi z api będziesz w aplikacji operował