javascript是不是自带了base64加密、解密函数?是什么?

JavaScript011

javascript是不是自带了base64加密、解密函数?是什么?,第1张

是的,解密函数为:

window.btoa("test");//"dGVzdA=="

window.atob("dGVzdA==")//"test"

为什么要使用Base64加密呢?

Base64编码的作用:由于某些系统中只能使用ASCII字符。Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法。它使用下面表中所使用的字符与编码。

而且base64特别适合在http,mime协议下快速传输数据。

base64其实不是安全领域下的加密解密算法。虽然有时候经常看到所谓的base64加密解密。其实base64只能算是一个编码算法,对数据内容进行编码来适合传输。虽然base64编码过后原文也变成不能看到的字符格式,但是这种方式很初级,很简单。

Base64编码方法要求把每三个8Bit的字节转换为四个6Bit的字节,其中,转换之后的这四个字节中每6个有效bit为是有效数据,空余的那两个 bit用0补上成为一个字节。因此Base64所造成数据冗余不是很严重,Base64是当今比较流行的编码方法,因为它编起来速度快而且简单。

js路径的问题有时候不好处理,在jsp中,我们可以用el表达式直接获取basePath,但是在单独js文件中不能用el表达式,又不想在jsp中单独的写个变量,可以用以下方法:

var location = (window.location+'').split('/')

var basePath = location[0]+'//'+location[2]+'/'+location[3]

var url = basePath + '/js/xxx.js'

base64编码:

string base64_encode(string data)

data:要进行base64编码的数据。该函数的返回结果为字符串类型

还原:

string base64_decode(string encoded_data)

encoded_data 指要进行base64解码的字符串