mirror of
https://github.com/TheAlgorithms/JavaScript.git
synced 2025-07-05 00:01:37 +08:00
merge: Add Upper (#862)
This commit is contained in:
28
String/Upper.js
Normal file
28
String/Upper.js
Normal file
@ -0,0 +1,28 @@
|
||||
/**
|
||||
* @function upper
|
||||
* @description Will convert the entire string to uppercase letters.
|
||||
* @param {String} url - The input URL string
|
||||
* @return {String} Uppercase string
|
||||
* @example upper("hello") => HELLO
|
||||
* @example upper("He_llo") => HE_LLO
|
||||
*/
|
||||
|
||||
const upper = (str) => {
|
||||
if (typeof str !== 'string') {
|
||||
throw new TypeError('Invalid Input Type')
|
||||
}
|
||||
|
||||
let upperString = ''
|
||||
|
||||
for (const char of str) {
|
||||
let asciiCode = char.charCodeAt(0)
|
||||
if (asciiCode >= 97 && asciiCode <= 122) {
|
||||
asciiCode -= 32
|
||||
}
|
||||
upperString += String.fromCharCode(asciiCode)
|
||||
}
|
||||
|
||||
return upperString
|
||||
}
|
||||
|
||||
export { upper }
|
9
String/test/Upper.test.js
Normal file
9
String/test/Upper.test.js
Normal file
@ -0,0 +1,9 @@
|
||||
import { upper } from '../Upper'
|
||||
|
||||
describe('Upper', () => {
|
||||
it('return uppercase strings', () => {
|
||||
expect(upper('hello')).toBe('HELLO')
|
||||
expect(upper('WORLD')).toBe('WORLD')
|
||||
expect(upper('hello_WORLD')).toBe('HELLO_WORLD')
|
||||
})
|
||||
})
|
Reference in New Issue
Block a user