js判断数组,对象,是否为空,是否含有某个值,判断数组中对象是否有某个值
一、数组1、判断数组是否为空arr.lengthlet arr = [];if (arr.length == 0){console.log("数组为空")}else {console.log("数组不为空")}2、判断数组中是否含有某一项a、for循环let arr = ['key']for (let i = 0; i < arr.l...
·
一、数组
1、判断数组是否为空
arr.length
let arr = [];
if (arr.length == 0){
console.log("数组为空")
}else {
console.log("数组不为空")
}
2、判断数组中是否含有某一项
a、for循环
let arr = ['key']
for (let i = 0; i < arr.length; i++) {
const element = arr[i]
if (element == 'key') {
console.log('存在')
} else {
console.log('不存在')
}
}
b、arr.indexOf()
let arr = ['key']
if (arr.indexOf('key') == -1) {
console.log('不存在')
} else {
console.log('存在')
}
c、arr.find()
let arr = ['key']
let a=arr.find((item)=>{
if(item == 'key'){
console.log("存在")
}else{
console.log("不存在")
}
})
3、判断数组中的对象是否含有某一项
a、some()
var arr = [
{
name: '二狗子'
},
{
name: '颤三'
}
]
var s = arr.some(item => {
if (item.name == '颤三') {
return true
} else {
return false
}
})
console.log(s)
b、find()---返回找到的一项,找不到返回undefined
var arr1 = [
{
name: '沧桑',
value: '0'
},
{
name: '二狗子',
value: '1'
}
]
var result_two = arr1.find(v => {
return v.value === '0'
})
console.log(result_two)
c、find Index()----找不到返回-1,找到返回下标值
var arr1 = [
{
name: '沧桑',
value: '0'
},
{
name: '二狗子',
value: '1'
}
]
var result_two = arr1.findIndex(v => {
return v.value === '0'
})
console.log(result_two)
二、对象
1、判断对象是否为空
a、转成字符串
var data = {}
var b = JSON.stringify(data) == '{}'
if (b == true) {
console.log('为空')
} else {
console.log('不为空')
}
b、Object.getOwnPropertyNames()------此方法是使用Object对象的getOwnPropertyNames方法,获取到对象中的属性名,存到一个数组中,通过判断数组是否为空来判断对象是否为空
var data = {}
var arr = Object.getOwnPropertyNames(data)
if(arr.length == 0){
console.log("为空")
}else{
console.log("不为空")
}
c、ES6的Object.keys()----类似b
var data = {}
var arr = Object.keys(data)
if(arr.length == 0){
console.log("为空")
}else{
console.log("不为空")
}
2、判断对象中是否含有某一项
obj.hasOwnProperty(prop)
var data = {a:'1'}
if(data.hasOwnProperty('a') == true){
console.log('存在')
}else{
console.log('不存在')
}
更多推荐
已为社区贡献5条内容
所有评论(0)