Python有一个内置函数enumerate
,可以获得一(index, item)
对可迭代的对.
ES6是否具有数组的等价物?它是什么?
def elements_with_index(elements):
modified_elements = []
for i, element in enumerate(elements):
modified_elements.append("%d:%s" % (i, element))
return modified_elements
print(elements_with_index(["a","b"]))
#['0:a', '1:b']
ES6相当于没有enumerate
:
function elements_with_index(elements){
return elements.map(element => elements.indexOf(element) + ':' + element);
}
console.log(elements_with_index(['a','b']))
//[ '0:a', '1:b' ]
小智.. 49
是的,请查看Array.prototype.entries()
.
是的,请查看Array.prototype.entries()
.
let array = [1, 3, 5];
for (let [index, value] of array.entries())
console.log(index + '=' + value);
Array.prototype.map
已经给你一个指数作为第二个参数回调过程......而且它支持几乎无处不在.
['a','b'].map(function(element, index) { return index + ':' + element; }); //=> ["0:a", "1:b"]
我也喜欢ES6
['a','b'].map((e,i) => `${i}:${e}`) //=> ["0:a", "1:b"]