• 【JavaScript技巧】JS快捷技巧


    !! 布尔值快速转换

    console.log(!!obj)

    && 与 || 代替 if else

    var day = (new Date).getDay() === 0;
    if (day) {
        alert('Today is Sunday!');
    };
    // 运用逻辑与代替if
    day && alert('Today is Sunday!');

    注:

    (1)逻辑与:只有在前者为true, 才执行后面的操作
    (2)逻辑或:只有在前者为false时才执行后者
    (3)dateObject.getDay()返回0(周日)~6(周六)


    交换两个变量的值
    var a=1, b=2;
    a = [b, b=a][0];


    NaN 不等于任何值,包括它自身

    console.log(NaN == NaN);        // false
    console.log(NaN === NaN);    // false

    利用script标签保存任意信息
    将script标签设置为 type='text' 然后可以在里面保存任意信息,之后可以在JavaScript代码中很方便地获取。

    页面代码如下所示:

    <script type="text" id="angelaScript">
        <h1>这个标题1是不会显示出来的,可以用这种方式保存信息哦!</h1>
    </script>
    <script type="text/javascript">
        console.log(document.getElementById('angelaScript').innerHTML);
    </script>

    switch的用法

    function switchTest(para) {
        switch(para) {
            case 3: 
                console.log('num: %d', para); break;
            case '3': 
                console.log('string: %s', para); break;
            case 'mytest': 
                console.log('字符串'); break;
            default: 
                console.log(para);
        }
    }
    
    switchTest('3');        // string: 3
    switchTest(3);        // num: 3
    switchTest('mytest');        // 字符串

    可见:
    1)switch参数变量与case后面的比较是全等比较,也就是说 === 的比较
    2)switch语句不光可以使用数字、字符做条件表达式,还可以使用字符串!

    另一个例子,可以显示强大的switch完全替代 if else

    var num = 1;
    switch(true) {
        case num < 0:
            alert('Less than 0.'); break;
        case num >=0 && num <= 10:
            alert('Between 0 and 10.'); break;
        default:
            alert('More than 10.');
    }


    html中设置了id的元素居然是js的全局变量
    html页面代码如下所示

    <div id="angelaDiv"></div>
    <script type="text/javascript">
        console.log(angelaDiv);
    </script>

    在chrome控制台看到的结果如下图所示

    让Chrome变成编辑器
    极客无极限: http://www.csdn.net/article/2013-02-01/2814041-1-line-browser-notepad

  • 相关阅读:
    在xcode5中修改整个项目名
    如何调试堆损坏
    My Life with Isaac Stern by Aaron Rosand
    Seagate 硬盘产地查询
    服务器返回 HTTP 500
    Exception code: 0xE0434352
    When curl sends 100-continue
    Milestone 不能卸载,修复 Counter 即可
    GE 遇到的 UAC 导致不能自动启动的问题
    关于 UAC,Mark Russinovich on the Future of Security
  • 原文地址:https://www.cnblogs.com/shih/p/6278687.html
Copyright © 2020-2023  润新知