gpt4 book ai didi

javascript - 无法验证所有嵌套子元素的长度

转载 作者:搜寻专家 更新时间:2023-11-01 04:56:20 24 4
gpt4 key购买 nike

我有 1 个对象,其中包含如下所示的嵌套子对象:

$scope.artists.materials.items[] 

现在我会有几位艺术家,其中包含项目列表,但在此我想检查每个艺术家项目的总长度,如果发现不匹配,那么我想返回 true 或 false。

Problem is when i dont have items for any of the artist then still i am getting false

这里的想法是存储来自第一位艺术家的项目的长度,并确保所有项目都具有相同的项目长度。

代码:

function checkItemsValidity() {
for (var i = 1; i < $scope.artists.length; index++) {
if ($scope.artists[i].materials.items != undefined && $scope.artists[0].materials.items) {
if($scope.artists[i].materials.items.length != $scope.artists[0].materials.items[0].length) {
return false;
}
}
return false;
}
return true;
}

案例 1:如果只有一位艺术家则返回 true 因为没有其他艺术家可以比较

情况 2:如果 2 位艺术家有 2 件作品,则返回 true 否则为 false;

情况 3:如果有 3 个艺术家,艺术家 1 和艺术家 2 有 2 个项目,艺术家 3 有 5 个项目,则返回 false;

谁能帮我解决这个问题??

最佳答案

据我了解,您只想检查每位艺术家是否拥有相同数量的项目。这段代码:

var result, materialsNumber;
for (var artist of $scope.artists) {
var artistMaterialsNumber = artist.materials.items.length;
if (!materialsNumber) {
materialsNumber = artistMaterialsNumber;
}
result = (materialsNumber === artistMaterialsNumber);
if (!result) {
break;
}
}

return result;

应该对此有用。它会记住第一位艺术家的元素数量,并检查其他艺术家是否有相同数量的元素。如果有不同项目编号的艺术家代码中断并返回 false

关于javascript - 无法验证所有嵌套子元素的长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39789538/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com