Assignment Help logo
在线聊天

Loading...

Score %0 (0 correct0 incorrect20 unanswered)

Q1. 如果两个比较的值不相等,哪个操作符会返回 true?

  • <>
  • ~
  • ==!
  • !==

参考 JavaScript 比较操作符

Q2. forEach 语句与 for 语句有何不同?

  • 只有 for 语句使用回调函数。
  • for 语句更通用,可以与各种可迭代对象一起使用,而 forEach 语句主要用于数组,但也可以与其他可迭代对象(如 Sets)一起使用。
  • 只有 forEach 语句允许您指定自己的迭代器。
  • forEach 语句是通用的,但 for 语句只能与数组一起使用。

参考 forEach 和 for 循环之间的区别

Q3. 回顾下面的代码。哪个语句调用了 addTax 函数并将 50 作为参数传递?

function addTax(total) {
  return total * 1.05;
}
  • addTax = 50;
  • return addTax 50;
  • addTax(50);
  • addTax 50;

参考 JavaScript 函数

Q4. 创建名为 rate 并将其值设为 100 的变量的正确方法是哪个语句?

  • let rate = 100;
  • let 100 = rate;
  • 100 = let rate;
  • rate = 100;

参考 JavaScript 赋值运算符

Q5. 哪个语句使用 Person 构造函数创建了一个新对象?哪个语句创建了一个名为 "student" 的新 Person 对象?

  • var student = new Person();
  • var student = construct Person;
  • var student = Person();
  • var student = construct Person();

参考

Q6. 在下面的代码中,何时会将最后一条语句记录到控制台?何时会记录 "results shown" 到控制台?

let modal = document.querySelector('#result');
setTimeout(function () {
  modal.classList.remove('hidden');
}, 10000);
console.log('Results shown');
  • 10 秒后
  • 在从 HTTP 请求接收到结果后
  • 10000 秒后
  • 立即

参考 JavaScript 是同步且单线程的

Q7. 你可以添加哪一段代码到这段代码中,以将 "food" 打印到控制台?

class Animal {
  static belly = [];
  eat() {
    Animal.belly.push('food');
  }
}
let a = new Animal();
a.eat();
console.log(/* Snippet Here */); //Prints food
  • a.prototype.belly[0]
  • Object.getPrototype0f (a).belly[0]
  • Animal.belly[0]
  • a.belly[0]

参考 JavaScript 类的 static 关键字

Q8. 你写了如下代码来记录一组连续的值,但实际上结果是将值 5、5、5 和 5 记录到控制台。哪个修改后的版本的代码会记录值 1、2、3 和 4?

  • A
for (var i = 1; i <= 4; i++) {
  setTimeout(function () {
    console.log(i);
  }, i * 10000);
}
  • B
for (var i = 1; i <= 4; i++) {
  (function (i) {
    setTimeout(function () {
      console.log(j);
    }, j * 1000);
  })(j);
}
  • C
for (var i = 1; i <= 4; i++) {
  setTimeout(function () {
    console.log(i);
  }, i * 1000);
}
  • D
for (var i = 1; i <= 4; i++) {
  (function (j) {
    setTimeout(function () {
      console.log(j);
    }, j * 1000);
  })(i);
}
  • E
for (var j = 1; j <= 4; j++) {
  setTimeout(function () {
    console.log(j);
  }, j * 1000);
}
  1. 参考 setTimeout
  2. 参考立即调用的匿名函数

Q9. 函数如何创建闭包?

  • 当值发生变化时重新加载文档。
  • 它返回对其父作用域中变量的引用。
  • 执行完成但未返回时。
  • 将局部变量复制到全局作用域。

参考

Q10. 哪个语句创建了一个名为 discountPrice 的新函数?

  • A
let discountPrice = function (price) {
  return price * 0.85;
};
  • B
let discountPrice(price) {
  return price * 0.85;
};
  • C
let function = discountPrice(price) {
  return price * 0.85;
};
  • D
discountPrice = function (price) {
  return price *

 0.85;
};

参考定义 JavaScript 函数

Q11. 运行下面的代码后,控制台中的结果是什么?

var Storm = function () {};
Storm.prototype.precip = 'rain';
var WinterStorm = function () {};
WinterStorm.prototype = new Storm();
WinterStorm.prototype.precip = 'snow';
var bob = new WinterStorm();
console.log(bob.precip);
  • Storm()
  • undefined
  • 'rain'
  • 'snow'

参考原型链

Q12. 你需要匹配一个类似于 12:00:32 的时间值。以下哪个正则表达式适用于你的代码?

  • /[0-9]{2,}:[0-9]{2,}:[0-9]{2,}/
  • /\d\d:\d\d:\d\d/
  • /[0-9]+:[0-9]+:[0-9]+/
  • / : : /

注意:前三个部分都部分正确,会匹配数字,但第二个选项最正确,因为它只匹配2 位数字的时间值(12:00:32)。第一个选项如果重复范围看起来像 [0-9]{2},则会起作用,但由于逗号 [0-9]{2,} 的存在,它将选择 2 个或更多位数(120:000:321)。第三个选项将匹配任何范围的时间数字,单个和多个(这意味着 1:2:3 也会匹配)。

更多资源

  1. 重复字符
  2. Kleene 操作符

Q13. 运行此代码后,控制台中的结果是什么?

'use strict';
function logThis() {
  this.desc = 'logger';
  console.log(this);
}
new logThis();
  • undefined
  • window
  • {desc: "logger"}
  • function

参考 JavaScript 类

Q14. 在下面的代码中,你将如何引用文本 'avenue'?

let roadTypes = ['street', 'road', 'avenue', 'circle'];
  • roadTypes.2
  • roadTypes[3]
  • roadTypes.3
  • roadTypes[2]

参考访问 JavaScript 数组

Q15. 运行此语句后,控制台中的结果是什么?

console.log(typeof 42);
  • 'float'
  • 'value'
  • 'number'
  • 'integer'

参考 JavaScript 数据类型

Q16. 哪个属性引用分派事件的 DOM 对象?

  • self
  • object
  • target
  • source

参考 DOM 事件

Q17. 你正在为下面的代码添加错误处理。在 if 语句中,你将包含哪段代码来指定错误消息?

function addNumbers(x, y) {
  if (isNaN(x) || isNaN(y)) {
  }
}
  • exception('One or both parameters are not numbers')
  • catch('One or both parameters are not numbers')
  • error('One or both parameters are not numbers')
  • throw('One or both parameters are not numbers')

参考 JavaScript 抛出

Q18. 哪个方法将 JSON 数据转换为 JavaScript 对象?

  • JSON.fromString();
  • JSON.parse()
  • JSON.toObject()
  • JSON.stringify()

参考将 JSON 转换为 JavaScript 对象

Q19. 何时会使用条件语句?

  • 当你想多次重用一组语句。
  • 当你希望代码在多个选项之间进行选择时。
  • 当你想将数据分组在一起。
  • 当你想要循环遍历一组语句。

参考 JavaScript 条件语句

Q20. 运行此代码后,控制台中的结果是什么?

for (var i = 0; i < 5; i++) {
  console.log(i);
}
  • 1 2 3 4 5
  • 1 2 3 4
  • 0 1 2 3 4
  • 0 1 2 3 4 5

参考 JavaScript for 循环