window.btoa()是基于Base64算法的。window.btoa()只能将ASCII字符进行转码

因此我们需要了解Base64的原理及主要特征:Base64的原理在这里就不多说了,网上很多讲解都很详细。

这里我们简单总结下Base64的主要特征:

1 Base64由64个字符组成A-Z a-z 0-9 + / =

2 字符串的长度一定是4的倍数

3 = 一定出现在末尾,等号的个数为0-2

有了这些特性我们应该想到用正则表达式来进行判断

var base64regex = /^([-9a-zA-Z+/]{})*(([-9a-zA-Z+/]{}==)|([-9a-zA-Z+/]{}=))?$/;
var paramsString = "?name=XX";
if(base64regex.test(paramsString)){
  alert("YES");
}else{
  alert("NO");
}

需要指出的是这种方式并不一定都正确,如果测试字符串正好符合Base64特征就不能正确检测了。

js如何判断字符串是否进行过window.btoa()转码的更多相关文章

  1. js 正则判断字符串下划线的长度

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Node.js之判断字符串中是否包含某个字符串

    server.txt内容如下: 阿里云服务器 关于应用场景,就不多说了,字符串是不论是后端开发还是前端开发等,都是要经常打交道了. test.js(node.js代码,只要被本地装了node.js环境 ...

  3. JS代码判断字符串中有多少汉字

    $("form").submit(function () { var content = editor.getContentTxt(); var sum = 0; re = /[\ ...

  4. JS代码判断字符串中有多少汉字【转】

    $("form").submit(function () { 2 var content = editor.getContentTxt(); 3 var sum = 0; 4 re ...

  5. [转载]js javascript 判断字符串是否包含某字符串,String对象中查找子字符,indexOf

    var Cts = "bblText"; if(Cts.indexOf("Text") > 0 ) { alert('Cts中包含Text字符串'); }

  6. JS中判断字符串中出现次数最多的字符及出现的次数

    <script type="text/javascript"> var str = 'qwertyuilo.,mnbvcsarrrrrrrrtyuiop;l,mhgfd ...

  7. js如何判断字符串里面是否含有某个字符串

    方法一: indexOf() (推荐) var str = "123"; console.log(str.indexOf("3") != -1 ); // tr ...

  8. js正则判断字符串中是否包含特殊字符和空格

    字符串只能是数字.字母和中文组成,不能包含特殊符号和空格. /^[\u4e00-\u9fa5_a-zA-Z0-9]+$/

  9. C# & JS 判断字符串是否为日期格式

    在C#中,对格式的判断有一类专门函数,那就是TryParse.TryParse在各个不同的类型类(如int,string,DateTime)中,都是存在的.在TryParse中一般有两个参数,一个是待 ...

随机推荐

  1. [Redux] Implementing combineReducers() from Scratch

    The combineReducers function we used in previous post: const todoApp = combineReducers({ todos, visi ...

  2. cpio.gz 解压

    linux下cpio.gz文件的解压方法:今天下载了 10201_database_linux_x86_64.cpio.gz 文件,解压方法如下:1. gunzip 10201_database_li ...

  3. OD: Universal Shellcode

    本节讲如果开发通用的 Shellcode. Shellcode 的组织 shellcode 的组织对成功地 exploit 很重要. 送入缓冲区的数据包括: . 填充物.一般用 0x90 (NOP) ...

  4. OD: Shellcode / Exploit & DLL Trampolining

    看到第五章了. 标题中 Dll Tramplining(跳板)名字是从如下地址找到的,写的很好: http://en.wikipedia.org/wiki/Buffer_overflow#The_ju ...

  5. 关闭窗口(window.close)

    close()关闭窗口 用法: window.close(); //关闭本窗口 或 <窗口对象>.close(); //关闭指定的窗口 例如:关闭新建的窗口. <script typ ...

  6. JS的作用域和作用域链

    每个函数都有自己的作用域,当执行流进入一个函数时,函数就会被推入栈中,而在函数执行之后,栈将其执行环境弹出,把控制权放回给之前的作用域,全局作用域是最外围的一个作用域,因此,所有全局变量和函数都是作为 ...

  7. 迟到的tkinter---学校选课刷屏器

    今儿上午选修了一门<结构分析与程序设计>,发现是用VB编写结构力学受力图示的一门课,VB高中学过,但是基本已经忘得差不多了,今儿老师让用VB编写了一个计算器,匆忙的百度了一下后就完成了觉得 ...

  8. html禁止手机页面放大缩小

    html禁止手机页面放大缩小 <meta name="viewport" content="width=device-width,minimum-scale=1.0 ...

  9. Ubuntu 添加sudo用户

    第一种方法: 添加sudo用户 当你安装Ubuntu的时候,它会自动添加第一个用户到sudo组,允许这个用户通过键入其自身帐户密 码来获得超级用户(root)身份.然而,系统不会再自动添加其他的用户到 ...

  10. C#方法的重载

    方法的重载 参数不同,个数可以相同 参数相同,个数不能相同 static void Main(string[] arr) { Console.WriteLine(M(,)); Console.Read ...