zoukankan      html  css  js  c++  java
  • 您是否有足够的兴趣再一次认识JavaScript?

    四年前,悉尼程序员Dmitry Baranovskiy在他的个人博客更新了这样一篇博文:《So, you think you know JavaScript?》 不久便在国内引发围观,俨然成了一个老生常谈的话题。

    准备好了吗?如下几段代码,是在其基础上新增了几道,相信不少JSER都很眼熟。那么对于未曾见过的同学,它会帮助你对javascript核心有更深层的了解,尽管它们都偏离于实际应用之外。试着去分析他们的最终结果,在这之前切记不要用调试工具,否则就丧失了其意义。

    A:不要以为它是易语言

    var 弹框 = alert, 函数 = Function;
    function 贤心(行为){
        弹框('此人正在'+ 行为);
    };
    函数('贤心("发呆")')(); 

    B:

    if (!("a" in window)) {
        var a = 1;
    }
    alert(a)

    C:

    var a = 1,
        b = function a(x) {
            x && a(--x);
        };
    alert(a);

    D:

    function a(x) {
        return x * 2;
    }
    var a;
    alert(a);

    E:

    function b(x, y, a) {
        arguments[2] = 10;
        alert(a);
    }
    b(1, 2, 3);

    F:

    function a() {
        alert(this);
    }
    a.call(null)

    G:

    console.log("Why am I a " + typeof + "");

    H:

    var u1000 = {
      u1001: 'foo',
      u1011: 'bar'
    };
    console.log( u1000.u1001 );
    console.log( u1000.u1011 );

    I:

    console.log(++[[]][+[]]);

    J:

    var fn = function(){
        return false;
    };
    (function(){
        console.log(fn());
        if(false){
             function fn(){
                return true;
            }
        }
    })();
  • 相关阅读:
    (Alpha)Let's-版本测试报告
    (Alpha)Let's-版本发布说明
    Daily Scrum 11.4
    (Alpha)Let's-技术文档(技术规格说明书)
    Daily Scrum 11.3
    Daily Scrum 11.2
    (Alpha)Let's-典型用户和场景&功能规格说明书
    Maven中 jar包冲突原理与解决办法
    JAVA8新特性详解
    数据库分库分表以及带来的问题
  • 原文地址:https://www.cnblogs.com/mrxia/p/3811565.html
Copyright © 2011-2022 走看看