Javascript基础(3)正则、JSON、函数简介

1.正则表达式:
①由模式和修饰符构成:/this/i this就是模式,i表示不区分大小写。这个作为搜索包含this字符串的正则
②字符串可以用match()、search()和replace()方法来使用正则表达式:

        var str = "Visit Microsoft!";
        var res = str.replace(/microsoft/i, "apple"); //将microsoft替换apple
   或者:var res = str.replace("microsoft","apple");   //这个替换时区分大小写

③常见的修饰符包括:i(不区分大小写)、g(全局匹配,而不是找到一个就停止查找)、m(多行匹配)
④常见的正则模式:[abc]、[0-9]、\d、\s、\b、n+、n*、n?等等

2. 正则表达式对象:RegExp
含有两个方法:
①test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回true,否则返回false
②exec() 该函数返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null

   举例:var patt = /e/;
            patt.test("The best things in life are free!");
     可以再简化为:/e/.test("The best things in life are fress!");   //返回值是true
另外:
http://www.W3Cfuns.com  提供了常见的需要用到的正则表达式

3.JavaScript中也支持采用 throw 或 try-catch 来处理程序错误。其中throw 语句允许我们创建自定义错误
详细用法参考:http://www.w3cschool.cc/js/js-errors.html

4.JavaScript调试方法,按F12,console:
①代码中支持console.log(“输出到控制台的内容”) 方法
②debugger关键字:可停止执行JavaScript,并调用调试函数,这个关键字与在调试工具中设置断点的效果一样

6.表单中邮箱验证的一种新方法:
判断输入的字符串中 @ 和 . 连个符号的索引位置,其中@不能为首,且@之后必须有一个.号。

   举例:var x=document.forms["myForm"]["email"].value;    
        var atpos=x.indexOf("@");
        var dotpos=x.lastIndexOf(".");
        if (atpos<1 || dotpos<atpos+2 || dotpos+2>=x.length){}

7.JSON(JavaScript Object Notation),用于存储和传输数据格式
JSON 的格式是一个文本,然后可以被其他编程语言读取为数据格式传递
JSON 的语法规则是:键/值对,注意:键需要在双引号中

8.javascript:void() 表示的是 执行括号中的表达式,单不返回任何值
注意:href='#' 与 href='javascript:void(0)'的区别是:
#号包含了一个位置详细,默认是锚 #top,也就是网页的上端,而javascript:void(0)代表一个死链接

9.JavaScript中函数可以存储在一个变量中,被存储的那个变量可以作为函

    var x = function (a, b) {return a * b};//这实际上是一个匿名函数
    var z = x(4, 3);   
    //z的值就是12以上代码效果和下面的一致,Function是JavaScript内置的函数构造器,但应尽量别用new关键字!!!
    var x = new Function("a","b","return a*b");
    var z = x(4,3);

10.如果表达式后面紧跟 () ,则函数变为一个自调用函数。如:

    (function () {
            var x = "Hello!!";      // 我将调用自己
    })();

11.函数本质是一个对象,拥有对象的属性和方法,如果将 函数名.toString(); //会将整个函数体作为字符串返回

12.如果函数在调用时缺少参数,参数的值会默认设置为: undefined
JavaScript 函数有个内置的对象 arguments.函数的所有参数都放在arguments数组中,
可以通过arguments[i]来访问参数
注意:如果函数修改参数,不会修改参数的初始值(在函数外定义);但是:
如果参数是对象类型的,我们在函数内部修改对象的属性就会修改其初始的值了

13.在HTML中默认的全局对象是HTML页面本身,在浏览器中的页面对象是浏览器窗口(window 对象)。
所有没有指定对象的函数会自动变为 window 对象的函数,这时候某个 myFunction() 和
window.myFunction() 一致。
单全局变量 或 函数可能会带来重名的危险,所以最好别这么做
更多关于函数的知识:如call() 和 apply() 方法等等
参见:http://www.w3cschool.cc/js/js-function-invocation.html

13.* 闭包是可访问上一层函数作用域里变量的函数,即便上一层函数已经关闭 *

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值