谁能建议如何在 JavaScript 中检查字符串是否由全角和半角日文字符混合组成?
混合角色由
组成例子:
Aa!bb123サンプル
function checkCharacterWidth(input) {
var hasFullWidth = false;
var hasHalfWidth = false;
for (var i = 0; i < input.length; i++) {
var charCode = input.charCodeAt(i);
if (
(charCode >= 0x0020 && charCode <= 0x007E) || // Half-width characters
(charCode >= 0xFF61 && charCode <= 0xFF9F) || // Half-width Katakana
(charCode >= 0xFFA0 && charCode <= 0xFFDC) || // Full-width Roman characters and half-width voiced sound marks
(charCode >= 0xFFE8 && charCode <= 0xFFEE) // Half-width punctuation marks and symbols
) {
hasHalfWidth = true;
} else {
hasFullWidth = true;
}
if (hasFullWidth && hasHalfWidth) {
return true;
}
}
return false;
}
// Example usage:
var userInput = prompt('Enter your input:');
var hasMixedWidth = checkCharacterWidth(userInput);
console.log('Has mixed width:', hasMixedWidth);