autojs怎么读取组数中不同的值

var members =

[

1,
2,
3
];
var a
log(a)
每次log(a)的时候会依次显示1然后2和3
log,3次以后再从1开始

如何实现呢

可以用生成器函数
你题目的解答代码如下:

function* countAppleSales(arr) {
    var i = 0;
    while (true) {
        yield arr[i];
        i = (i+1) % arr.length;
    }
}

var members = [1,2,3];
var a = countAppleSales(members);
console.log(a.next().value);
console.log(a.next().value);
console.log(a.next().value);
console.log(a.next().value);
console.log(a.next().value);
console.log(a.next().value);
console.log(a.next().value);
console.log(a.next().value);

img

也可以用闭包方式


function pft(arr) {
    var i = 0;
    return function () {
        var n = arr[i];
        i = (i+1) % arr.length;
        return n;
    };
}

var members = [1,2,3];
var a = pft(members);
console.log(a());
console.log(a());
console.log(a());
console.log(a());
console.log(a());
console.log(a());
console.log(a());
console.log(a());

如有帮助,望采纳!谢谢!