Войдите или зарегистрируйтесь
Вы сможете писать комментарии и посты, ставить лайки и другое
Поиск
Тёмная тема

Кривой нейминг в JavaScript: atob() и btoa()

2 ч. назад
В ЖСе есть два глобально доступных метода для работы с Base64 - это atob() и btoa(). Этот нейминг - явно калька с более старших языков. В Си в стандартной библиотеке есть, например, методы atoi и atof:

#include <stdlib.h>

char str[] = "123";
int num = atoi(str); // 123

atoi - означает ascii to integer, а atof - ascii to float (хотя по факту там double).

И как вы думаете, что делает функция atob в javascript? ASCII to Base64? Т.е. обычную строку в Base64 строку? Нет! Она делает ровно наоборот: переводит Base64 строку в "обычную" строку. А btoa в свою очередь переводит обычную строку в Base64!

console.log(btoa('Famabara')); // 'RmFtYWJhcmE='
console.log(atob('RmFtYWJhcmE')); // 'Famabara'

Кому в голову пришло перепутать названия? Люблю JS.
+1
1
0
Комментариев пока нет