w3resource

JavaScript: Input a string and converts upper case letters to lower and vice versa

JavaScript String: Exercise-10 with Solution

Write a JavaScript function that takes a string which has lower and upper case letters as a parameter and converts upper case letters to lower case, and lower case letters to upper case.

Test Data:
console.log(swapcase('AaBbc'));
"aAbBC"

Pictorial Presentation:

JavaScript: Input a string and converts upper case letters to lower and vice versa

Sample Solution:-

HTML Code:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JS swap case</title>
</head>
<body>
</body>
</html>

JavaScript Code:

swapcase = function swapcase(str) {
        return str.replace(/([a-z]+)|([A-Z]+)/g, function(match, chr) {
            return chr ? match.toUpperCase() : match.toLowerCase();
        });
    }
console.log(swapcase('AaBbc'));

Sample Output:

aAbBC

Flowchart:

Flowchart: JavaScript- Input a string  and converts upper case letters to lower and vice versa

Live Demo:

See the Pen JavaScript Input a string and converts upper case letters to lower and vice versa - string-ex-10 by w3resource (@w3resource) on CodePen.


Improve this sample solution and post your code through Disqus

Previous: Write a JavaScript function to capitalize the first letter of each word in a string.
Next: Write a JavaScript function to convert a string into camel case.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



JavaScript: Tips of the Day

var functionName = function() {} vs function functionName() {}

The difference is that functionOne is a function expression and so only defined when that line is reached, whereas functionTwo is a function declaration and is defined as soon as its surrounding function or script is executed (due to hoisting).

For example, a function expression:

// TypeError: functionOne is not a function
functionOne();

var functionOne = function() {
  console.log("Hello!");
};

Historically, function declarations defined within blocks were handled inconsistently between browsers. Strict mode (introduced in ES5) resolved this by scoping function declarations to their enclosing block.

'use strict';    
{ // note this block!
  function functionThree() {
    console.log("Hello!");
  }
}
functionThree(); // ReferenceError

Ref: https://bit.ly/2zMAj1O