has【对象含有属性(功能更强大)】
描述
判断对象是否含有某一个属性,功能更加强大 v3.1.3+
# 1.示例
import { has } from 'sf-utils2'
let obj = {
id: 2,
name: '苹果',
pId: null,
person: {
name: {
name: '1324'
}
},
children: [
{
id: 1004,
name: '苹果A',
pId: 2,
children: [
{
id: 1004004,
name: '苹果A-儿子',
pId: 1004
}
]
},
{
name: '苹果C',
pId: 2
}
]
}
console.log(has(obj, 'id')) // true
console.log(has(obj, 'children[0].name')) // true
console.log(has(obj, 'children[0].children[0]')) // true
console.log(has(obj, 'id.name')) // false
console.log(has(obj, 'person.name.name')) // true
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
:::
# 2.入参说明
| 参数 | 说明 | 类型 | 是否必填 | 默认值 |
|---|---|---|---|---|
| obj | 对象 | Object | 是 | |
| property | 属性名 | String | 是 |
# 3.源码
/**
* 判断是否拥有一个可枚举的属性
* @param {Object} obj
* @param {String} property
* @return {boolean}
*/
function hasOwn(obj = {}, property = '') {
return Object.prototype.hasOwnProperty.call(obj, property)
}
export default hasOwn
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
上次更新: 2024/01/08, 21:47:25