Practică și perseverență pentru învățare

Pentru a mă motiva să învăț cât mai mult, voi începe să scriu în fiecare zi măcar câteva rânduri despre ce învăț în fiecare zi.

Astăzi m-am uitat peste un tutorial de CSS și am învățat câte ceva despre display:flex. Concluzia? Se schimbă total modul în care se vor realiza site-uri pentru tablete, telefoane etc.

Mai vedem mâine 🙂

Bonfire: Check for Palindromes

Am obiceiul să complic lucrurile dar uite că acest bonfire a fost relativ usor. Codul original era putin mai lung (mai alex regexp) dar am văzut că cineva de pe gitter a sugerat doar \W|_ care înseamnă toate caracterele care nu sunt litere sau (|) underscore _

RegExp de la Mozilla e bun tare https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp

function palindrome(str) {
str = str.replace(/\W|_/g, '').toLowerCase();
return str == str.split('').reverse().join('');
}

palindrome("eye");

Update: Se mai poate și [\W_] sau [^a-zA-Z0-9]

Bonfire: Arguments Optional

Nu am vrut să mă mai complic la acest bonfire că e deja 5 dimineața. Soluția e mai jos:

function add() {
 var a = arguments[0];
 var b = arguments[1];
 
 for ( var prop in arguments ) {
 if ( typeof arguments[prop] !== 'number' ) {
 return undefined;
 }
 }
 
 if ( arguments.length == 1 ) {
 return function(ar){
 if ( typeof ar !== 'number' ) {
 return undefined;
 }
 return a + ar;
 };
 } else {
 console.log(arguments);
 return Object.keys(arguments).reduce(function(prev,curr){
// return arguments[prev]+arguments[curr];
 return arguments.curr;
 });
 }
 
 

 return false;
}

console.log(add(2,3));

O chestie interesantă legată de psihologic / sentimental e că atunci când stăteam până la 3-4-5 dimineața ca să mă joc, înainte de a închide, mă simțeam aiurea de tot, complet nefolositor și mă încerca un sentiment de deznădejde că n-am făcut nimic bun în viață și că nu sunt bun la nimic însă dacă citesc sau învăț sau mă rog, totul este altfel, mă simt mai implinit și cu nădejdea că fac și eu ceva bun pentru societate, că pot contribui și eu cu ceva.

 

Bonfire: Everything Be True

Parcă nu îmi vine să cred ce se întâmplă. Ori sunt ultimele exerciții de la intermediate FOARTE UȘOARE ori mi-a dat Dumnezeu înțelepciune să le înțeleg (că spune Sfântul Apostol Iacov că să ne rugăm lui Dumnezeu să ne dea înțelepciune).

Rezolvarea mai jos:

function every(collection, pre) {
// Does everyone have one of these?
pre = collection.every(function(obj){
return obj.hasOwnProperty(pre)
});
return pre;
}

every([{"user": "Tinky-Winky", "sex": "male"}, {"user": "Dipsy", "sex": "male"}, {"user": "Laa-Laa", "sex": "female"}, {"user": "Po", "sex": "female"}], "sex");

Numai bine.