js判断对象名包不包含某一个字符串
时间: 2024-10-16 12:15:36 浏览: 22
在JavaScript中,你可以使用`Object.prototype.toString.call()`方法和正则表达式来判断一个对象的类型是否包含某个特定字符串。这个方法返回的是一个表示对象类型的字符串,例如"[object Object]"、"[object Array]"等。
以下是一个示例函数,用于检查一个给定对象的名字(即`toString()`结果中的部分)是否包含指定的字符串:
```javascript
function objNameContains(obj, targetString) {
const objectTypeStr = Object.prototype.toString.call(obj);
return objectTypeStr.includes('[object ' + targetString.toLowerCase() + ']');
}
// 使用示例
const myObj = {};
console.log(objNameContains(myObj, "Object")); // 输出 true,因为 myObj 是 object 类型
console.log(objNameContains([], "Array")); // 输出 true,因为 [] 是 array 类型
```
在这个函数中,首先将目标字符串转换为小写并与`toString()`返回的结果进行比较,这样就不受大小写影响了。如果对象名字包含指定的类型字符串,则返回`true`,否则返回`false`。
相关问题
js 对象数组是否包含某个字符串
在JavaScript中,判断一个对象数组(Array of Objects)是否包含特定的字符串,通常需要遍历这个数组并对每个对象的某个属性进行检查。如果你想要查找的是对象数组里的某个键值对,可以这样做:
```javascript
function containsString(array, searchString, searchKey) {
for(let obj of array) {
if(obj[searchKey] === searchString) {
return true;
}
}
return false;
}
// 示例用法
let objArray = [
{ name: 'Alice', age: 20 },
{ name: 'Bob', age: 25 },
{ name: 'Charlie', age: 30 }
];
let contains = containsString(objArray, 'Alice', 'name'); // 返回 true
```
这里`containsString`函数接收一个数组、要搜索的字符串以及要在对象中搜索的键名。如果找到匹配项,则返回true,否则返回false。
javaScript 判断对象中a字段是否含有字符串”选择“ 怎么写
可以使用以下代码来判断对象中a字段是否包含字符串"选择":
```
if (obj.a.includes("选择")) {
// 包含字符串"选择"
} else {
// 不包含字符串"选择"
}
```
其中,obj为要判断的对象,a为该对象中的字段名。`.includes()`方法用于判断字符串是否包含某个子字符串。如果包含,则返回true,否则返回false。
阅读全文