Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更改JS对象的默认密钥_Javascript_For Loop_Lodash - Fatal编程技术网

Javascript 更改JS对象的默认密钥

Javascript 更改JS对象的默认密钥,javascript,for-loop,lodash,Javascript,For Loop,Lodash,如何将transform()方法生成的默认关键帧从Lodash更改为此对象。它们必须从1开始,而不是从0开始 function getHashValues(section, matchExp) { var picked = _.transform(section, function(result, value, key) { var matches = key.match(new RegExp(matchExp)); if (matches) {

如何将transform()方法生成的默认关键帧从Lodash更改为此对象。它们必须从1开始,而不是从0开始

function getHashValues(section, matchExp) {
    var picked = _.transform(section, function(result, value, key) {
        var matches = key.match(new RegExp(matchExp));
        if (matches) {
            result[matches[2]] = result[matches[2]] || {};
            result[matches[2]][matches[1]] = value;
        }
    }, {});

    // Log
    console.log(typeof picked); // object
    console.log(picked); // Object {0: Object, 1: Object, 2: Object, 3: Object, 4: Object, 5: Object, 6: Object, 7: Object, 8: Object, 9: Object}

    return picked;
}

不用尝试,我会说使用
result[matches[2]+1]
。你能告诉我们
getHashValues
的用法吗?正如@user3557327所说。。。您可能需要0.reduce而不是0.transform(您不转换节,是吗?)和0.transform不生成键,您使用[]符号生成它们。。。旁注:将
newregex
放在getHashValues开头的var中,以节省一些CPU周期。