javascript - js的switch和let的问题
巴扎黑
巴扎黑 2017-04-11 11:51:32
[JavaScript讨论组]

先说switch:

var a = [];
switch (a.constructor){
    case String:
        console.log('string')
        break;
    case Array:
        console.log('array');
        break;
    default:
        console.log('wrong');
        break;
}

这里得到的结果是字符串array,但是当我这样子的时候:

a.contructor == Array // false

这是为什么?是switch做了什么转换吗?

另外一个问题:

let a = []; // node环境下
console.log(a.constructor) // SyntaxError: Block-scoped declarations (let, const, function, class) not yet supported outside str
ict mode

这是为什么?

巴扎黑
巴扎黑

全部回复(2)
伊谢尔伦

同学……你也太粗心了点……
你再仔细看看这句话,不觉得哪里不对吗?

a.contructor == Array // false

关于第二个问题
请在代码最上方加上"use strict";

迷茫

亲,你能先保证你说的问题是对的,再来问为什么吗?

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号