您的位置  > 互联网

北医医考:2017年国家公务员考试面试模拟题

3.````.log(x);````输出结果为``. 原因是变量“x”没有声明,所以执行时会抛出错误。 但是,由于使用了 `` 运算符,不会抛出错误,而是返回 `` 。 4. ```` a = 1; 测试() { a = 2; .log(a); var a = 3;}test();.log(a);```输出结果为`2`和`1`。 原因是在函数 `test` 中,变量 `a` 被提升了,相当于: ``` test() { var a; a = 2; .log(a); a = 3;}` 执行期间。 ``因此 `.log(a)` 打印 `2`,而函数外部的 `.log(a)` 打印 `1`。 5. ``` a = {};var b = { key: 'b' };var c = { key: 'c' };a[b] = 123;a[c] = 456;.log(a [b]);```输出结果为`456`。

原因是对象属性名内部是以字符串的形式存储的,所以变量`b`和`c`转换成字符串后是一样的,相当于:```['[ ]' ] = 123;a ['[ ]'] = 456;```因此 `.log(a[b])` 输出 `456`。