Javascript本身没有该功能。您可以在下面找到一些如何解决的示例:
正常功能,基本平面中的任何字符(不检查代理对)
function range(start,stop) { var result=[]; for (var idx=start.charCodeAt(0),end=stop.charCodeAt(0); idx <=end; ++idx){ result.push(String.fromCharCode(idx)); } return result;};range('A','Z').join();与上面相同,但是作为添加到数组原型的函数,因此可用于所有数组:
Array.prototype.add_range = function(start,stop) { for (var idx=start.charCodeAt(0),end=stop.charCodeAt(0); idx <=end; ++idx){ this.push(String.fromCharCode(idx)); } return this;};[].add_range('A','Z').join();预选字符的范围。比上面的函数要快,并且可以
alphanum_range('A','z')用来表示AZ和az:var alphanum_range = (function() { var data = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'.split(''); return function (start,stop) { start = data.indexOf(start); stop = data.indexOf(stop); return (!~start || !~stop) ? null : data.slice(start,stop+1); };})();alphanum_range('A','Z').join();或ascii范围内的任何字符。通过使用缓存的阵列,它比每次构建阵列的功能都快。
var ascii_range = (function() { var data = []; while (data.length < 128) data.push(String.fromCharCode(data.length)); return function (start,stop) { start = start.charCodeAt(0); stop = stop.charCodeAt(0); return (start < 0 || start > 127 || stop < 0 || stop > 127) ? null : data.slice(start,stop+1); };})();ascii_range('A','Z').join();


