Javascript学习笔记【第三章】3

来源:互联网 发布:协同过滤推荐算法综述 编辑:程序博客网 时间:2024/06/10 07:30
<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>第三章3.html</title></head><body><script type="text/javascript">    //模式匹配    var _p=/^HTML/;                 //匹配以HTML开始的字符串    _p=/^[1-9][0-9]*/;              //匹配第一个非零数字,后面是任意个数字    _p=/\bjavascript\b/i;           //匹配单词 javascript 忽略大小写    var pa="Javascript";    console.log(_p.test(pa));    pa ="testing: 1,2,3";    _p=/\d+/g;                      //匹配所有包含一个或多个实例    console.log(_p.test(pa));       //True    console.log(pa.search(_p));     // 9 : 首次匹配成功的位置    console.log(pa.match(_p));      // [1,2,3] : 所有匹配组成的数组    console.log(pa.replace(_p,"#"));// 将匹配成功的替换成#    console.log(pa.split(/\D+/));   // 用非数字字符截取字符串    //布尔值    // undefined null 0 -0 NaN "" 空字符串 都会被转化成false    if(!0){        console.log("!0");    }    // null 空 undefined 未定义 两者相等 都表示值的空缺 严格相等运算符 === 则不等    if(null==undefined){        console.log("null==undefined");        if(null===undefined){ // 不等,            console.log("null==undefined");        }    }    //全局对象    Math,JSON;//等等    if(!([]==[])){//两个单独的数组永不相等        console.log("!([]==[])");    }    if(!({}=={})){//两个单独的对象永不相等        console.log("!({}=={})");    }    var a=[];    var b=a;    //变量b引用同一个数组    b[0]=1;     //用过变量b来修改引用的数组    console.log(a[0]);// 原始变量a也会被更改  1    if(a===b){        console.log("a和b引用同一个数组,因此它们相等");    }    //将数组赋值给一个变量,仅仅是赋值的引用值,对象本身并没有复制一次。    //类型转化    if("0"==0){        console.log("true 在比较之前字符串转化成数字");    }    if(false==0){        console.log("true 在比较之前布尔值转化成数字");    }    if(false=="0"){        console.log("true 在比较之前都转化成数字");    }    //显式类型转化    Number("3");        // 3    String(false);      //"false"    Boolean([]);        //true    Object(3);          // new Number(3);    //试图把null undefined 转换成对象则抛出异常    try{        undefined.toString(); //Uncaught TypeError: Cannot read property 'toString' of undefined 报错    }catch(e){        console.error(e.toString());    }    if(!!1){ //等价于 Boolean(1) 注意是双叹号        console.info("!!1");    }    //Number类定义的 toString()方法可以进行 2-36 进制转化    var n=250;    console.info("250 转换成二进制:"+n.toString(2));    console.info("250 转换成八进制:"+n.toString(8));    console.info("250 转换成十进制:"+n.toString(10));    console.info("250 转换成十六进制:"+n.toString(16));    var t=true;                 //一个值    var T=new Boolean(true);    //一个对象    if(t==T){ //true 相等        console.info(1);        if(!(t===T)){ //不等  //严格相等符号  不转换类型 则不等            console.info("t===T = false");        }    }    var now=new Date(); //当前时间(太平洋时间)    console.log(now.valueOf()); //1442546485061    console.log(typeof (now+1)); //string 将日期转化成字符串    console.log(typeof (now-1)); //number 使用对象到数字的转换    console.log(now== now.toString()); //true 隐式的和显式的字符串转换    console.log(now>now-1); //true 转化成数字</script></body></html>

0 0
原创粉丝点击