range(1, 10, 3) 返回 [1, 4, 7, 10];
range('A', 'F', 2) 返回 ['A', 'C', 'E'];
请应用 JavaScript 语言实现该性能(能够应用 ES6)

参考答案:

function range() {    var args = [].slice.call(arguments); // 相当于Array.slice.call(arguments),目标是将arguments对象的数组提出来转化为数组,arguments自身并不是数组而是对象    var str = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];    var result = [];    if (args.length > 2) {        if (typeof args[0] === 'number') { // 如果是number型数据            for (var i = args[0]; i <= args[1]; i = i + args[2]) {                result.push(i);            }        } else {            for (var i = str.indexOf(args[0]); i <= str.indexOf(args[1]); i = i + args[2]) {                result.push(str[i]);            }        }    }    return result;}range(1, 10, 3); //  [1, 4, 7, 10]// range('A', 'F', 2); // ['A', 'C', 'E']