You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何优化Steam libraryfolders遍历代码并获取库数量?

Steam库路径查找代码优化与库总数获取方法

代码优化方案

原代码通过硬编码循环上限(999)遍历库索引,存在两个明显问题:一是假设库索引连续从0开始,若Steam库索引出现不连续情况会直接遗漏后续库;二是会执行大量无效遍历(实际库数量远小于999)。优化方式如下:

优化思路

直接遍历libraryfolders下的所有库对象,无需依赖索引规则,同时可根据需求提前终止循环(仅需第一个匹配结果时),减少不必要的遍历操作。

优化后代码示例

const targetGameId = '433340';
// 提取所有库对象组成数组
const libraries = Object.values(json.libraryfolders);

// 遍历所有库
for (const lib of libraries) {
    // 先判断apps属性存在,避免报错
    if (lib.apps && lib.apps.hasOwnProperty(targetGameId)) {
        console.log(`app found in ${lib.path}`);
        // 若只需第一个匹配结果,可添加break终止循环
        // break;
    }
}

获取库总数的方法

由于libraryfolders是对象而非数组,可通过获取其所有键的数量来得到库总数:

const libraryCount = Object.keys(json.libraryfolders).length;
console.log(`Steam库总数:${libraryCount}`);

内容的提问来源于stack exchange,提问作者Jaros

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 13:10:48