Code:
/**
* 返回目標字符在特定範圍內(有特定起始點)的序號索引
* @param {string} target - 目標字符
* @param {string} startChar - 起始字符(可以傳入一個字符串,但只以頭一個字符爲標準)
* @return {number}
*/
var getCharRangeIndex = function(target, startChar = 'a') {
if (typeof startChar !== 'string' || startChar.length === 0) {
startChar = 'a';
}
if (typeof target !== 'string' || target.length !== 1) {
throw new TypeError('TypeError:請輸入字符串形式的有效參數!')
}
const startCharCode = startChar.charCodeAt(0);
return target.charCodeAt(0) - startCharCode;
};
示例:
getCharRangeIndex('x'); // 23
getCharRangeIndex('z'); // 25
getCharRangeIndex('G', 'A'); // 6
getCharRangeIndex('G', 'AB'); // 6
getCharRangeIndex(1, 'A'); // Error