Javascript基础学习

eg:利用正则表达式来去掉空格。

1:msg=' Hello ';

  1. <script type="text/javascript">
  2.     var msg = ' Hello ';
  3.     msg = msg.replace(/^\s+/, "").replace(/&\s+/, '');
  4.     alert(msg);
  5. </script>

eg:利用js实现登录的时候显示密码的强度

这个主要使用正则表达式来进行判断和js操作样式来改变下面的颜色。需要注意的是switch的时候千万不要忘记写break;在合适的地方跳出来。

  1. <script type="text/javascript">
  2.     window.onload = function () {
  3.         //这里为文本框注册一个键盘键按下后弹起的事件
  4.         document.getElementById('txtPassword').onkeyup = function () {
  5.             var tds = document.getElementById('tb1').getElementsByTagName('td');
  6.             //初始化颜色
  7.             for (var i = 0; i <tds.length; i++) {
  8.                 tds[i].style.backgroundColor = '';
  9.             }
  10.             //1:获取用户输入的内容
  11.             var val = this.value;
  12.             if (val.length > 0) {
  13.             //2:根据用户输入的密码,来效验密码的强度。
  14.             var pwdLvl = getPasswordLever(val);
  15.             //3:改变下面显示的强度。
  16.             switch (pwdLvl) {
  17.                 case 0:
  18.                 case 1:
  19.                 case 2:
  20.                     //弱
  21.                     tds[0].style.backgroundColor = 'red';
  22.                     break;
  23.                 case 3:
  24.                 case 4:
  25.                     //中
  26.                     tds[0].style.backgroundColor = 'orange';
  27.                     tds[1].style.backgroundColor = 'orange';
  28.                     break;
  29.                 case 5:
  30.                     //强
  31.                     tds[0].style.backgroundColor = 'green';
  32.                     tds[1].style.backgroundColor = 'green';
  33.                     tds[2].style.backgroundColor = 'green';
  34.                     break;
  35.                 default:
  36.             }
  37.             }
  38.  
  39.         };
  40.     };
  41.     //这里是申明了一个匿名函数,通过这个匿名函数来判断密码的强度。
  42.     function getPasswordLever(user_pwd) {
  43.         //下面是通过正则表达式的match()方法来判断输入的密码中是否有满足的指定条件。
  44.         var lvl = 0;
  45.         //1:含有数字,强度+1
  46.         if (user_pwd.match(/\d+/)) {
  47.             lvl++;
  48.         }
  49.         //2:含有小写字母,强度+1
  50.         if (user_pwd.match(/[a-z]+/)) {
  51.             lvl++;
  52.         }
  53.         //3:含有大写字母,强度+1
  54.         if (user_pwd.match(/[A-Z]+/)) {
  55.             lvl++;
  56.         }
  57.         //4:含有特殊符号,强度+1
  58.         if (user_pwd.match(/[^0-9a-zA-Z]+/)) {
  59.             lvl++;
  60.         }
  61.         //5:密码的长度超过6位,强度+1
  62.         if (user_pwd.length > 6) {
  63.             lvl++;
  64.         }
  65.         return lvl;
  66.     }
  67. </script>


关于笔记:自己要很认真的写,一些知识点自己学过去就会忘记,笔记可以为以后留着复习用。希望自己坚持下去。

JavaScript基础插曲-练习的更多相关文章

  1. JavaScript基础插曲—元素样式,正则表达式,全局模式,提取数组

    JavaScript基础学习 学习js的基础很重要,可以让自己有更多的技能.我相信这个以后就会用到. Eg:点击选择框,在div中显示出选择的数量 window.onload = function() ...

  2. JavaScript基础—插曲

    Javascript基础 1:js中我们最好使用单引号,其实可以使用双引号的但是为了区别所以js中全部使用单引号.注释和C#的是一样的.网页里面的执行顺序是从上到下依次执行的,不管你js放到哪里,都会 ...

  3. JavaScript基础插曲---apply,call和URL编码等方法

    Js基础学习 Js的压缩: 就是利用js的语法格式通过缩短变量名,去掉空格等来进行压缩. Apply和call的使用 1:apply方法:应用某一对象的方法,用于一个对象替换当前对象.主要是改变thi ...

  4. JavaScript基础插曲—获取标签,插入元素,操作样式

    Js基础 1:document.write() 这个是动态创建元素内容,利用js.这个可以利用js来创建元素,文本,标签等,document.write()与document.writeln()的区别 ...

  5. JavaScript基础—插曲02

    Js学习基础 1:关于js中的数组 这里面可以是键值对的形式来存储的,我们必须利用forIn来输出,这就相当于foreach一样. var dir = new Array(); dir['0'] = ...

  6. JavaScript基础

    JavaScript基础 JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处 ...

  7. 一步步学习javascript基础篇(0):开篇索引

    索引: 一步步学习javascript基础篇(1):基本概念 一步步学习javascript基础篇(2):作用域和作用域链 一步步学习javascript基础篇(3):Object.Function等 ...

  8. 前端之JavaScript基础

    前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...

  9. 一步步学习javascript基础篇(3):Object、Function等引用类型

    我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...

随机推荐

  1. 实战-Fluxion与wifi热点伪造、钓鱼、中间人攻击、wifi破解

    原作者:PG     整理:玄魂工作室-荣杰 目录: 0x00-Fluxion是什么 0x01-Fluxion工作原理 0x02-Kali上安装fluxion 0x03-Fluxion工具使用说明+实 ...

  2. 探求网页同步提交、ajax和comet不为人知的秘密(上篇)

    标题里的技术都是web开发里最常见的技术,但是我想这些常用的技术有很多细节是很多朋友不太清楚的,理解这些细节是我们深入掌握这些技术的一把钥匙,今天我就讲讲我使用这些技术时体会到的这些细节. 同步提交是 ...

  3. 浅谈Excel开发:四 Excel 自定义函数

    我们知道,Excel中有很多内置的函数,比如求和,求平均,字符串操作函数,金融函数等等.在有些时候,结合业务要求,这些函数可能不能满足我们的需求,比如我想要一个函数能够从WebService上获取某只 ...

  4. 十分钟搞定CSS选择器

    在最近的web开发中是不是就会用到一些选择器,发现很多尤其是CSS3新增的不太熟悉,在此总结一下. 优先级 不同级别 1. 在属性后面使用 !important 会覆盖页面内任何位置定义的元素样式. ...

  5. Azure China (10) 使用Azure China SAS Token

    <Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China 注意:本文介绍的是Azure China Storage Priva ...

  6. Warning: Null value is eliminated by an aggregate or other SET operation.

    Null 值会被聚合函数忽略,默认情况下,Sql Server会给出Warning: Warning: Null value is eliminated by an aggregate or othe ...

  7. Sql Server 的本地时间和UTC时间

    一,本地时间和UTC时间 本地时间 世界的每个地区都有自己的本地时间,整个地球分为二十四时区,每个时区都有自己的本地时间. UTC时间 在国际无线电通信中,为统一而普遍使用一个标准时间,称为通用协调时 ...

  8. CSS三列布局

    × 目录 两侧定宽中间自适应 两列定宽一侧自适应 中间定宽两侧自适应一侧定宽两列自适应三列自适应总结 前面的话 前面已经介绍过单列定宽单列自适应和两列自适应的两列布局.本文介绍三列布局,分为两侧定宽中 ...

  9. Abp公共连接和事务管理方法

    Conection 和事务管理在使用数据库的应用中是一个最重要的概念.当你打开一个连接,开始一个事务,如何来处理这些连接等等. 您也许知道,.NET使用了连接池.所以,创建一个连接实际上是从连接池里得 ...

  10. Java 集合系列目录(Category)

    下面是最近总结的Java集合(JDK1.6.0_45)相关文章的目录. 01. Java 集合系列01之 总体框架 02. Java 集合系列02之 Collection架构 03. Java 集合系 ...