有一个对象{{jk3u:{{name:55,value:0}},{jj:{{name:55,value:0}},{yy:{{name:55,value:1}}},用js函数判断对象里面最后一项属性value为0的数组下标并返回
时间: 2023-11-01 15:33:35 浏览: 61
好的,可以使用如下的 JavaScript 函数来实现:
```javascript
function findLastIndex(obj) {
const keys = Object.keys(obj);
for (let i = keys.length - 1; i >= 0; i--) {
const key = keys[i];
const value = obj[key].value;
if (value === 0) {
return i;
}
}
return -1;
}
```
这个函数接收一个对象作为参数,然后遍历对象的属性,找到最后一个属性的值为 0 的属性,返回该属性在对象中的下标。如果找不到这样的属性,则返回 -1。
你可以将这个函数复制到你的代码中,并使用它来解决你的问题。
相关问题
有一个数组[{jk3u:{{name:55,value:0}},{jj:{{name:55,value:0}},{yy:{{name:55,value:1}}],用js函数判断数组里面最后一项属性value为0的数组下标并返回
首先需要修正一下数组的格式,使其符合JavaScript中的对象格式。以下是修正后的数组:
```javascript
const arr = [
{ jk3u: { name: 55, value: 0 } },
{ jj: { name: 55, value: 0 } },
{ yy: { name: 55, value: 1 } }
];
```
接下来可以使用与上一个问题类似的方法来查找数组中最后一个属性`value`为0的元素,并返回其索引。具体实现如下:
```javascript
const lastZero = arr.slice().reverse().findIndex(item => {
const values = Object.values(item);
return values.length && values[0].value === 0;
});
const lastZeroIndex = lastZero >= 0 ? arr.length - 1 - lastZero : -1;
console.log(lastZeroIndex);
```
代码解释:
1. `Object.values(item)`:由于每个元素都是一个对象,需要使用`Object.values()`方法获取对象的值,即`[{ name: 55, value: 0 }]`。
2. `values.length && values[0].value === 0`:检查值数组的长度是否为0,如果不为0,则判断第一个值对象的`value`属性是否等于0。
3. 最后输出找到的索引值,如果未找到则输出-1。
有一个数组[{jk3u:{}{name:55,value:0},{name:55,value:0},{name:55,value:1},{name:55,value:1},{name:55,value:1}],用js函数判断数组里面最后一项属性value为0的数组下标并返回
可以使用JavaScript中的`Array.prototype.findIndex()`方法来查找数组中符合条件的元素,并返回其索引。具体实现可以参考以下代码:
```javascript
const arr = [{jk3u:{}},{name:55,value:0},{name:55,value:0},{name:55,value:1},{name:55,value:1},{name:55,value:1}];
const lastZero = arr.slice().reverse().findIndex(item => item.value === 0);
const lastZeroIndex = lastZero >= 0 ? arr.length - 1 - lastZero : -1;
console.log(lastZeroIndex);
```
代码解释:
1. `arr.slice().reverse()`:先复制数组并反转,这样可以从后往前查找最后一个符合条件的元素。
2. `findIndex(item => item.value === 0)`:查找数组中属性`value`等于0的元素,并返回其索引(从后往前计数)。
3. `arr.length - 1 - lastZero`:由于上一步返回的是从后往前的索引,需要将其转换为从前往后的索引。
4. 最后输出找到的索引值,如果未找到则输出-1。
阅读全文