We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
原题链接: https://leetcode.cn/problems/check-if-object-instance-of-class/
题目要求我们编写一个函数,检查给定的值是否是给定类或超类的实例。可以传递给函数的数据类型没有限制。例如,值或类可能是 undefined。
解题思路:
我们可以使用 JavaScript 的 instanceof 运算符来检查一个对象是否是一个类的实例。然而,instanceof 运算符不能用于检查原始类型的值(如数字、字符串、布尔值、null、undefined 和 BigInt)是否是对应的包装对象的实例。为了处理这种情况,我们可以先使用 Object() 函数将原始类型的值转换为对象,然后再使用 instanceof 运算符进行检查。
instanceof
null
undefined
BigInt
Object()
解题代码:
/** * @param {any} obj - 需要检查的对象 * @param {any} classFunction - 需要检查的类 * @return {boolean} - 如果 obj 是 classFunction 的实例,则返回 true,否则返回 false */ var checkIfInstanceOf = function(obj, classFunction) { // 如果 obj 是 null 或 undefined,或者 classFunction 不是一个函数, // 那么我们可以直接返回 false if (obj === null || obj === undefined || !(classFunction instanceof Function)) return false; // 使用 Object() 函数将 obj 转换为对象(如果它是一个原始类型的值), // 然后使用 instanceof 运算符检查它是否是 classFunction 的实例 return Object(obj) instanceof classFunction; };
这个解法可以处理各种类型的值和类,包括原始类型的值和它们的包装对象,以及自定义的类和它们的实例。
The text was updated successfully, but these errors were encountered:
No branches or pull requests
原题链接:
https://leetcode.cn/problems/check-if-object-instance-of-class/
题目要求我们编写一个函数,检查给定的值是否是给定类或超类的实例。可以传递给函数的数据类型没有限制。例如,值或类可能是 undefined。
解题思路:
我们可以使用 JavaScript 的
instanceof
运算符来检查一个对象是否是一个类的实例。然而,instanceof
运算符不能用于检查原始类型的值(如数字、字符串、布尔值、null
、undefined
和BigInt
)是否是对应的包装对象的实例。为了处理这种情况,我们可以先使用Object()
函数将原始类型的值转换为对象,然后再使用instanceof
运算符进行检查。解题代码:
这个解法可以处理各种类型的值和类,包括原始类型的值和它们的包装对象,以及自定义的类和它们的实例。
The text was updated successfully, but these errors were encountered: