1const set = new Set() 2 3set.add(1) 4set.add("Lydia") 5set.add({ name: "Lydia" }) 6 7for (let item of set) { 8 console.log(item + 2) 9}
本题为“单选题”
参考答案:
正确选项:C:3, Lydia2, [object Object]2
这个JavaScript代码片段创建了一个 Set ,并将三个不同类型的元素添加到其中:数字1,字符串"Lydia"和一个包含属性name
的对象 { name: "Lydia" }
。然后,使用for...of
循环遍历Set中的每个元素,并将每个元素的值与2相加后打印出来。
让我们一步一步来看代码:
const set = new Set()
: 创建了一个名为set
的空Set。
set.add(1)
: 将数字1添加到Set中。
set.add("Lydia")
: 将字符串"Lydia"添加到Set中。
set.add({ name: "Lydia" })
: 将包含属性name
的对象 { name: "Lydia" }
添加到Set中。
for (let item of set) { ... }
: 这是一个for...of
循环,用于遍历Set中的每个元素。它将遍历所有三个元素:数字1,字符串"Lydia"和对象 { name: "Lydia" }
。
console.log(item + 2)
: 此行将在循环中打印每个元素(1,"Lydia"和 { name: "Lydia" }
),并在它们的值上加上2。
然而,由于Set中包含不同的数据类型(数字、字符串和对象),+
运算符在不同类型的元素上的行为也不同:
1 + 2
将得到 3
。"Lydia" + 2
将把字符串和数字连接起来,结果是 "Lydia2"
。{ name: "Lydia" }
:对象没有定义+
运算符的行为,所以 "[object Object]" + 2
将被打印。循环的输出结果将是:
3
Lydia2
[object Object]2
最近更新时间:2023-07-20