js对象面试题

news/2024/7/15 18:14:25 标签: javascript, 前端, react.js

1、如何判断js对象是否存在某个属性?

  1. hasOwnProperty()
const obj = {a: 1, b: 2};
obj.hasOwnProperty('a'); // true
obj.hasOwnProperty('c'); // false
  1. 使用undefined判断
// 该方法存在一个问题,如果属性的值就是undefined的话,该方法不能返回想要的结果
const obj = {a: 1, b: undefined};
obj.a !== undefined; // true
obj.c !== undefined; // false
obj.b !== undefined; // false
  1. in 关键字
const obj = {a: 1, b: 2};
'a' in obj; // true
'c' in obj; // false
  1. 点或者方括号
const obj = {a: 1, b: 2};
obj.a // 1
obj.c // undefined
obj['a'] // 1
obj['c'] // undefined
  1. Object.keys()
const obj = {a: 1, b: 2};
Object.keys(obj).includes('a'); // true
Object.keys(obj).includes('c'); // false

http://www.niftyadmin.cn/n/1367248.html

相关文章

每日一题:1.下一个更大元素(C++)

每日一题:1.下一个更大元素(C) 题目:给你两个 没有重复元素 的数组 nums1 和 nums2 ,其中nums1 是 nums2 的子集。 请你找出 nums1 中每个元素在 nums2 中的下一个比其大的值。 nums1 中数字 x 的下一个更大元素是指 x…

每日一题:2.删除无效的括号(C++)

每日一题:2.删除无效的括号(C) 题目:给你一个由若干括号和字母组成的字符串 s ,删除最小数量的无效括号,使得输入的字符串有效。 返回所有可能的结果。答案可以按 任意顺序 返回。 解题思路: 先…

每日一题:3.重新排序得到 2 的幂(C++)

每日一题:3.重新排序得到 2 的幂(C) 题目:给定正整数 N ,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零。 如果我们可以通过上述方式得到 2 的幂,…

每日一题:4.路径交叉(C++)

每日一题:4.路径交叉(C) 题目: 给你一个整数数组 distance 。 从 X-Y 平面上的点 (0,0) 开始,先向北移动 distance[0] 米,然后向西移动 distance[1] 米,向南移动 distance[2] 米,向东…

每日一题:5. 只出现一次的数字(C++)

每日一题:5. 只出现一次的数字(C) 题目: 给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任意顺序 返回答案。 解题思路(1.暴力法)…

每日一题:6. 键盘行(C++)

每日一题:6. 键盘行(C) 题目: 给你一个字符串数组 words ,只返回可以使用在 美式键盘 同一行的字母打印出来的单词。 解题思路(1.哈希表): 将所有的字母对应行数赋值遍历所有字符串,判断每个字…

每日一题:7. 分糖果(C++)

每日一题:7. 分糖果(C) 题目: Alice 有 n 枚糖,其中第 i 枚糖的类型为 candyType[i] 。Alice 注意到她的体重正在增长,所以前去拜访了一位医生。 医生建议 Alice 要少摄入糖分,只吃掉她所有糖的…

每日一题:8. 删除链表中的节点(C++)

每日一题:8. 删除链表中的节点(C) 题目: 请编写一个函数,用于 删除单链表中某个特定节点 。在设计函数时需要注意,你无法访问链表的头节点 head ,只能直接访问 要被删除的节点 。 题目数据保证…