Strings are a sequence of zero or more characters written inside quotes used to represent text.
Strings may consist of letters, numbers, symbols, words, or sentences.
Strings are immutable, they cannot be changed.
Each character in a string has an index.
The first character will be index 0 the second character will be index 1 and so on.
There are two ways to access an individual character in a string.
charAt() method
const str1 = "abc"; string
str1.charAt(0); character at index 0 → "a"
str1.charAt(1); character at index 1 → "b"
str1.charAt(2); character at index 2 → "c"
str1.charAt(3); character at index 3 → "" index not found
Alternatively use at() or slice() methods
bracket notation []
const str2 = "abc"; string
str2[0]; character at index 0 → "a"
str2[1]; character at index 1 → "b"
str2[2]; character at index 2 → "c"
str2[3]; character at index 3 → undefined index not found
Arrays are used to store multiple values in a single variable.
Each value is called an element, and each element has a numeric position in the array, known as its index.
Arrays are zero-indexed, meaning the first element is at index 0, the second at index 1, and so on.
Arrays can contain any data type, including numbers, strings, and objects.
const arr1 = [2, 4, 6]; array
arr1[0]; element at index 0 → 2
arr1[1]; element at index 1 → 4
arr1[2]; element at index 2 → 6
arr1[3]; element at index 3 → undefined index not found
Numbers are used to represent both integer and floating-point values.
Numbers are most commonly expressed in literal forms like 255 or 3.14159 ↴
let num1 = 5; → number
let num2 = 2.5; → number
let num3 = num1 + num2;
console.log(num3); returns ↴
7.5 → number
Convert string to camel case using ↴
map() method → creates a new array from calling a function for every array element.
trim() method → removes whitespace from both ends of the string and returns a new string, without modifying the original string.
split() method → splits a string into an array of substrings.
charAt() method → returns the character at a specified index in a string.
slice() method → extracts a part of a string and returns it as a new string, without modifying the original string.
join() method → returns an array as a string.
toLowerCase() method → returns the value of the string converted to lower case.
toUpperCase() method → returns the value of the string converted to upper case.
trim() method removes whitespace from both ends of a string and returns a new string, without modifying the original string.
const str3 = " Hello World "; → string with leading and trailing whitespace
str3.trim(); returns ↴
"Hello World" → string without whitespace
toLowerCase() method converts all letters to lower case. The original string is unchanged.
const str4 = "hELlo wORLd";
str4.toLowerCase(); returns ↴
"hello world" → lower case
split() method splits a string into an array of substrings based on a specified separator (delimiter). The original string is unchanged.
("") separator → string is split between each character.
(" ") separator → string is split at each space character, resulting in an array of words.
const str5 = "Hello"; → string
str5.split(""); returns ↴
["H", "e", "l", "l", "o"] → array
const str6 = "hello world"; → string
str6.split(" "); returns ↴
["hello", "world"] → array
map() method creates a new array populated with the results of calling a provided function on every element in the calling array. The original array is unchanged.
const arr2 = [5, 10, 15, 20];
arr2.map((x) => x + 10); returns ↴
[15, 20, 25, 30] → 10 added to each element
charAt() method returns the character at the given index.
If the index is out of range an empty string "" is returned.
const str7 = "hello";
str7.charAt(0); → "h" first character
str7.charAt(1); → "e"
str7.charAt(2); → "l"
str7.charAt(3); → "l"
str7.charAt(4); → "o"
str7.charAt(5); → "" not found
toUpperCase() method converts all letters to upper case. The original string is unchanged.
const str8 = "hELlo wORLd";
str8.toUpperCase(); returns ↴
"HELLO WORLD" → upper case
slice() method extracts a part of a string and returns it as a new string, without modifying the original string.
syntax ↴
slice(start) return a new string from start index to end of string
slice(start, end) return a string from start index to end index of string (exclusive).
Return a new string from index 1 to end of string.
const str9 = "Hello World";
str9.slice(1); start index is 1
returns ↴
"ello World"
Return a new string from index 1 to index 9 (exclusive).
const str10 = "Hello World";
str10.slice(1, 9); start index is 1 end index is 9 (not included)
returns ↴
"ello Wor"
join() method joins all elements of an array into a single string with a specified separator between each element. The original array is unchanged.
("") separator → returns a string joined with no spaces between each character.
(" ") separator → returns string joined with a single space between each element.
const arr3 = ["H", "e", "l", "l", "o"]; array
arr3.join(""); returns ↴
"Hello" → string
const arr4 = ["Hello", "World"]; array
arr4.join(" "); returns ↴
"Hello World" → string
To capitalize a word
Convert entire string to lower case.
Capitalize first character.
Concatenate with the rest of the string.
const str11 = "hEllO";
const str12 = str11.toLowerCase();
const str13 = str12.charAt(0).toUpperCase() + str12.slice(1);
console.log(str13); returns ↴
"Hello"
Initialize a variable to hold the string to tranform to camel case.
const string1 = "jack of all trades"; → user input
Define a function toCamelCase to tranform a string into camel case.
function toCamelCase(str) {}
The function takes a string as input str and returns a new string that is transformed into camel case. The original string remains unchanged.
Trim whitespace from both ends of the string str
str.trim()
Convert the string to lower case.
.toLowerCase()
Split the string into an array of words.
.split(" ") → returns an array
map() method creates a new array by applying a callback function to each element of the array.
map(calbackFn) ↴
callback function ↴
(word, index) => iterate over each word with its index
if (index === 0) { if it is the first word, return it as is
return word first word remains in lower case
}
word → current element being processed in the array.
index → index of current element being processed in the array.
After the first word, capitalize the first letter of subsequent words and concatenate with the rest of the word.
return word.charAt(0).toUpperCase() + word.slice(1)
charAt(0).toUpperCase() convert first letter to upper case.
slice(1) append the remaining lower cased letters.
Join the array back into a single string without spaces.
.join("")
Call the function with ↴
toCamelCase(string1);
Convert string to camel case.
const string1 = "jack of all trades";
function toCamelCase(str) {
return str
.trim()
.toLowerCase()
.split(" ")
.map((word, index) => {
if (index === 0) {
return word;
}
return word.charAt(0).toUpperCase() + word.slice(1);
})
.join("");
}
call function
toCamelCase(string1); returns ↴
"jackOfAllTrades"
Alternative using a ternary operator ↴
const string2 = "jack of all trades";
function toCamelCase2(str) {
return str
.trim()
.toLowerCase()
.split(" ")
.map((word, index) =>
index === 0 ? word : word.charAt(0).toUpperCase() + word.slice(1)
)
.join("");
}
call function
toCamelCase2(string2); returns ↴
"jackOfAllTrades"