测验概述
已完成 0/10 个问题
问题:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
信息
Java 测试
您已完成过测验,因此您不能再测验。
测验载入中...
您必须登入或注册才能开始测验。
您必须先完成以下测验才能开始:
测验结果
答对 0/10 个问题
答题时间:
时间已花费
类别
- 未分类 0%
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 已答
- 回顾
-
1/10问题
1. 问题
以下关于尾调用优化的说法错误的是
正确
尾调用优化是 ES6 规范的一部分,但并非所有引擎都实现了此优化。
错误
尾调用优化是 ES6 规范的一部分,但并非所有引擎都实现了此优化。
-
2/10问题
2. 问题
下面代码的输出是什么
function factorial(n, acc = 1) { if (n <= 1) return acc; return factorial(n - 1, n * acc); } console.log(factorial(5));
正确
这是尾递归形式的阶乘函数,计算5的阶乘为120。
错误
这是尾递归形式的阶乘函数,计算5的阶乘为120。
-
3/10问题
3. 问题
以下关于 WebAssembly 的说法正确的是
正确
WebAssembly 是低级的、可移植的二进制格式,设计用于高效执行和与 JavaScript 互操作。
错误
WebAssembly 是低级的、可移植的二进制格式,设计用于高效执行和与 JavaScript 互操作。
-
4/10问题
4. 问题
下面代码的输出是什么
const buffer = new ArrayBuffer(16); const view = new Int32Array(buffer); view[0] = 42; console.log(view.length, view[0]);
正确
Int32Array 每个元素占4字节,16字节缓冲区可容纳4个元素,第一个元素被设为42。
错误
Int32Array 每个元素占4字节,16字节缓冲区可容纳4个元素,第一个元素被设为42。
-
5/10问题
5. 问题
以下关于 SharedArrayBuffer 的说法错误的是
正确
SharedArrayBuffer 本身操作不是线程安全的,需要配合 Atomics 实现原子操作。
错误
SharedArrayBuffer 本身操作不是线程安全的,需要配合 Atomics 实现原子操作。
-
6/10问题
6. 问题
下面代码的输出是什么
const sab = new SharedArrayBuffer(4); const ta = new Int32Array(sab); Atomics.store(ta, 0, 123); console.log(Atomics.load(ta, 0));
正确
Atomics.store 存储值123,Atomics.load 读取该值。
错误
Atomics.store 存储值123,Atomics.load 读取该值。
-
7/10问题
7. 问题
以下关于性能优化的说法正确的是
正确
这些都是常见的 JavaScript 性能优化技巧。
错误
这些都是常见的 JavaScript 性能优化技巧。
-
8/10问题
8. 问题
下面代码的输出是什么
const start = performance.now(); let sum = 0; for (let i = 0; i < 1000000; i++) { sum += i; } const end = performance.now(); console.log(end - start > 0);
正确
performance.now() 返回高精度时间戳,循环需要时间,差值应为正数
错误
performance.now() 返回高精度时间戳,循环需要时间,差值应为正数
-
9/10问题
9. 问题
以下关于内存管理的说法错误的是
正确
JavaScript 也有内存泄漏的可能,如未清除的定时器、DOM 引用等。
错误
JavaScript 也有内存泄漏的可能,如未清除的定时器、DOM 引用等。
-
10/10问题
10. 问题
下面代码的输出是什么
function createLargeObj() { return new Array(1000000).fill({}); } let obj = createLargeObj(); obj = null; console.log(obj);
正确
obj 被显式赋值为 null,输出 null,原数组成为垃圾回收候选。
错误
obj 被显式赋值为 null,输出 null,原数组成为垃圾回收候选。