const obj = { 1: 'a', 2: 'b', 3: 'c' } const set = new Set([1, 2, 3, 4, 5]) obj.hasOwnProperty('1') obj.hasOwnProperty(1) set.has('1') set.has(1)
时间: 2023-10-28 10:04:38 浏览: 132
const的理解和用法
这段代码中,第一行创建了一个包含三个属性的对象 obj,第二行创建了一个包含五个元素的 Set 集合 set。
接下来分别对 obj 和 set 进行了 hasOwnProperty() 和 has() 方法的调用,具体如下:
- obj.hasOwnProperty('1') 返回 true,因为 obj 对象中具有名为 '1' 的属性。
- obj.hasOwnProperty(1) 返回 true,因为 obj 对象中具有名为 '1' 的属性,而 JavaScript 中数字类型的属性名会被自动转换为字符串类型。
- set.has('1') 返回 false,因为 set 集合中不存在值为 '1' 的元素。
- set.has(1) 返回 true,因为 set 集合中存在值为 1 的元素。
需要注意的是,虽然在 JavaScript 中数字类型的属性名会被自动转换为字符串类型,但是在 Set 集合中,元素的值和类型都会被保留,因此 set.has('1') 和 set.has(1) 是两个不同的方法调用,返回值也会不同。
阅读全文