qwe3364925
V2EX  ›  PHP

看下有多少个 PHPer 能答对这道前端 js 题目?

  •  
  •   qwe3364925 · Apr 19, 2017 · 4444 views
    This topic created in 3496 days ago, the information mentioned may be changed or developed.
    (function(){var a = b = 5;})();

    请问
    console.log(a);
    console.log(b);
    分别会输出什么?
    19 replies  •  2017-04-20 13:20:49 +08:00
    b821025551b
    b821025551b
    Apr 19, 2017
    1
    两个 5
    Clarencep
    Clarencep
    Apr 19, 2017
    2
    干净的环境中( a 和 b 都没有定义过):
    1. 非严格模式下, a 会报错, b 是 5 ;
    2. 严格模式下直接报错 over



    来而不往非礼也, LZ 来试试这个:

    console.log('a b c ' + '1 2 3'.split(' ').map(parseInt)); // 输出什么?
    bdbai
    bdbai
    Apr 19, 2017 via Android
    3
    js 跟 PHP 有什么关系
    chunqiuyiyu
    chunqiuyiyu
    Apr 19, 2017 via iPhone
    4
    js 跟 PHP 有什么关系 +1
    iot
    iot
    Apr 19, 2017
    5
    我 php 、 web 前端都做过全职
    jarlyyn
    jarlyyn
    Apr 19, 2017
    6
    这种题目出出来的人应该被开除。
    IamJ
    IamJ
    Apr 19, 2017 via iPhone
    7
    如果组内有人写出这样的代码我就打断他的腿🤓
    gamecreating
    gamecreating
    Apr 19, 2017
    8
    有些人 总爱咬字 钻洞
    @bdbai
    @chunqiuyiyu
    Phariel
    Phariel
    Apr 19, 2017
    9
    @IamJ #7 我会在开会的时候狠狠地喷这种人的,相信我
    lalalanet
    lalalanet
    Apr 19, 2017
    10
    (function(){
    var a = b = 5;
    console.log(a); // 5
    console.log(b); // 5
    })();


    ----
    (function(){var a = b = 5;})();

    console.log(a); // error
    console.log(b); // error
    btjoker
    btjoker
    Apr 19, 2017
    11
    a 未定义
    b 变成全局变量为 5
    现在敢在项目里这样写的, 坟头草都割了好几茬了
    bdbai
    bdbai
    Apr 19, 2017 via iPhone
    12
    @gamecreating 观念问题。凭什么写 PHP 的要顺手把 js 也写了。
    hizoubin
    hizoubin
    Apr 19, 2017
    13
    这样写不符合代码规范的 腿都要被打断
    johnnie502
    johnnie502
    Apr 20, 2017
    14
    一道考 IIFE 的题,知道的就知道,不知道的就不知道,还不如直接问问啥事 IIFE
    jianzhiyao020
    jianzhiyao020
    Apr 20, 2017
    15
    undefined
    5
    araraloren
    araraloren
    Apr 20, 2017
    16
    ~~ 很讨厌 js 的变量提升,
    有 ES6 ~~
    let 一波。。
    qwe3364925
    qwe3364925
    OP
    Apr 20, 2017
    17
    @hizoubin 哈哈哈哈, 我也是在面试题中看到的, 勿喷我
    byfar
    byfar
    Apr 20, 2017
    18
    a:Uncaught ReferenceError: a is not defined
    at <anonymous>:1:1
    b:5

    我有控制台
    byfar
    byfar
    Apr 20, 2017
    19
    对了,如果两行输出在一个 js 里,第一个报错,第二个也不执行了吧?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1900 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 64ms · UTC 08:05 · PVG 16:05 · LAX 00:05 · JFK 03:05
    ♥ Do have faith in what you're doing.