mirror of
https://github.com/TheAlgorithms/JavaScript.git
synced 2025-07-05 16:26:47 +08:00
36 lines
1.6 KiB
JavaScript
36 lines
1.6 KiB
JavaScript
/*
|
||
Explanation :- A user gives a string (it can be incomplete lowercase or
|
||
partially in lowercase) and then the program converts it into a
|
||
completely (all characters in uppercase) uppercase string. The
|
||
logic we have used in the following program is: All the lowercase
|
||
characters (a-z) has [ASCII](https://en.wikipedia.org/wiki/ASCII) value ranging from 97 to 122 and their
|
||
corresponding uppercase characters (A-Z) have ASCII values 32
|
||
lesser than them. For example ‘a‘ has an ASCII value of 97
|
||
and ‘A‘ has an ASCII value of 65 (97 - 32). The same applies to other
|
||
characters.
|
||
*/
|
||
|
||
/**
|
||
* upperCaseConversion takes any case-style string and converts it to the uppercase-style string.
|
||
* @param {string} inputString Any case style string
|
||
* @returns {string} Uppercase string
|
||
*/
|
||
const upperCaseConversion = (inputString) => {
|
||
// Take a string and split it into characters.
|
||
const newString = inputString.split('').map(char => {
|
||
// Get a character code by the use charCodeAt method.
|
||
const presentCharCode = char.charCodeAt()
|
||
// If the character code lies between 97 to 122, it means they are in the lowercase so convert it.
|
||
if (presentCharCode >= 97 && presentCharCode <= 122) {
|
||
// Convert the case by use of the above explanation.
|
||
return String.fromCharCode(presentCharCode - 32)
|
||
}
|
||
// Else return the characters without any modification.
|
||
return char
|
||
})
|
||
// After modification, with the help of the join method, join all the characters and return them.
|
||
return newString.join('')
|
||
}
|
||
|
||
export { upperCaseConversion }
|