L'impact environnemental des voitures électriques confirmé par un nouveau rapport | ICI.Radio-Canada.ca

Ce que dit l’article, c’est qu’à l’usage, le CO2 émis est supérieur seulement si l’électricité produit se fait à partir d’énergies fossiles (charbon, gaz).
Si c’est fait à partir d’énergies propres, comme au Québec (l’article vient du Canada), alors ils sont au contraire extrêmement propres.
À l’usage, oui.

Donc en France, au Canada ou en Europe du nord où une bonne part de l’énergie électrique provient d’énergies non-émettrices de CO2 (charbon, gaz, pétrole), c’est totalement viable.
En Chine, en Inde, ça l’est beaucoup moins.

Quoi que… en Chine, c’est équivalent (et au Japon, USA, Allemagne, c’est environ à 40 % de CO2 en moins), toujours à l’usage.

« À l’usage », c’est donc aussi « d’émissions en centre-ville…

Ensuite, il y a la phase de fabrication.
L’article dit là encore (pour le CO2) que ça dépend de l’énergie primaire utilisée :

Cela s'explique, entre autres, par le fait que « la majorité de la production des batteries a lieu dans des pays avec une électricité très dépendante au charbon », principalement la Chine.

De nouveau, il suffit de faire une usine qui s’approvisionne sur de l’hydro ou du solaire pour totalement changer la donne.

Enfin, il y a les autres types de polluants, liés à l’extraction des composants nécessaires aux voitures électriques et spécifiques à celle-ci (cuivre, lithium…).
Là le bilan est nettement moins rose (ce qui est normal : les voitures à pétrole n’ont pas besoin de ça).

Mais faut relativiser là-aussi : ces polluants là, quoi que problématiques (on est d’accord), n’ont pas forcément un impact sur le climat.

Si c’est le climat qui est à sauver, la voiture électrique est très avantageuse.

Et sinon, oui, il y a aussi un problème lié au réseau électrique : il n’est pas prévu pour alimenter un parc auto entièrement électrique.

ÉDIT :
Oui, il est vrai que les barrages on un impact non négligeable sur l’écosystème (et pas que), en aval et en en amont, par leur présence et par leur effets.
Ceci est d’ailleurs le principal argument à leur encontre, généralement quand un projet de construction voit le jour.

Ce qui est "marrant", c’est qu’il y en a beaucoup moins (d’arguments) quand il s’agit de constater une marrée noire, ou d’aller faire mettre le feu au Moyen-Orient durant et depuis les 50 dernières années.

M’enfin, il y a bien une énergie qui n’émet pas de CO2, mais généralement personne n’aime. C’est celle qui permet à la France (par exemple) d’avoir un bilan carbone parmi les plus bas du monde.

ÉDIT 2
Ce n’est peut-être pas toujours le cas, mais si vous espérez une réponse à vos mais (j’en reçois pas mal à propos de ce post ici, d’où ce message ici), la moindre des choses est de rester poli et d’éviter les… noms d’oiseau ?

Comment bénéficier du billet de congé annuel de la SNCF à tarif réduit ? | service-public.fr

Une fois par an et par personne, chacun a droit à −25 % sur un billet (d’un trajet > 200 km ; à réservation obligatoire), pour lui et sa famille.
C’est même −50 % sur au moins la moitié du billet est payé avec des chèques vacances.

C’est un formulaire à remplir auprès du guichet, mais ça peut valoir le coût :).

Je rappelle aussi que la SNCF avait promis de faire payer plein pot les billets entre noël et le jour de l’an… Donc bon…

WindowOrWorkerGlobalScope.atob() - Web APIs | MDN

Oh tiens, les navigateurs ont une fonction interne pour encoder/décoder en Base64.

var encodedData = window.btoa('Hello, world'); // encode a string
var decodedData = window.atob(encodedData); // decode the string

C’est bien logique : quand on entre une URL en base64, le nav le décode, donc ils peuvent le faire.
C’est dispo dans tous les navigateurs modernes.

C’est cool, même pas besoin de lib externe si on n’en a rien à foutre d’IE :)

Pour les fichiers, c’était déjà très simple à encoder aussi : il suffisait d’utiliser readAsDataURL() sur un fichier importé avec un filereader (le contenu retourné par un input de type "file" par exemple), et c’était tout.

dataset vs getAttribute · jsPerf

Ok, donc "dataset" est environ 450 fois plus lent que getAttribute.
Pourquoi les nav n’utilisent pas un alias de l’un sur l’autre ?

J’imagine que dataset utilise quelques tests en plus (typage, etc), mais quand-même…

C’est pas la première fois que le JS a un fonctionnement surprenant. Par exemple, même pour un nœud dom bien rempli, il est beaucoup plus rapide de parcourir les nœud et les supprimer un par un que de faire un .innerHTML = "".