In this article we will learn every little thing about JavaScript (JS) Strings in Detail.

What is a Javascript String and Whats its used for ?

In JavaScript, String is a variable type, used for storing and manipulating text.

Strings are written inside quotes, you can use any single or double quotes per your preference.

The length of a string is found with the built-in length property, example: name.length;

When using the === operator, equal strings are not equal, because the === operator expects equality in both type and value.


var name = “Navjot Singh”;


var name = ‘Navjot Singh’;

Both are correct.

How are Strings stored ? And How to access String Characters ?

Each character in a String is stored at an index, starting from zero meaning, the first character is at index 0, second at index 1, third at index 2, and so on. This is important to understand as this helps you manipulate strings, in different ways that we will learn later in the article.

String Object

JavaScript strings are primitive values, created from literals, but they can also be defined as objects using the new keyword, yet it’s not recommended to use since, it slows down the execution speed and can produce un-expected results.

var name = new String(“Navjot Singh”);

How to insert Special Characters in a String ?

The backslash () escape character turns special characters into string characters.


var paragraph = “\@ is a special character, since I used the backslash before the special character\, now it will be treated as a string”.

Read more about Special Characters on W3Schools

String Properties and Methods

Primitive/String values, like “I am just a String”, cannot have properties or methods (since they are not objects).

But with JavaScript, methods and properties are available to primitive values, because JavaScript treats primitive values as objects when executing methods and properties.

Which means you are free to use any of the inbuilt JS properties and methods on your string variables.

String Properties

constructorReturns the string’s constructor function
lengthReturns the length of a string
prototypeAllows you to add properties and methods to an object

String Methods

charAt()Returns the character at the specified index (position)
charCodeAt()Returns the Unicode of the character at the specified index
concat()Joins two or more strings, and returns a new joined strings
endsWith()Checks whether a string ends with specified string/characters
fromCharCode()Converts Unicode values to characters
includes()Checks whether a string contains the specified string/characters
indexOf()Returns the position of the first found occurrence of a specified value in a string
lastIndexOf()Returns the position of the last found occurrence of a specified value in a string
localeCompare()Compares two strings in the current locale
match()Searches a string for a match against a regular expression, and returns the matches
repeat()Returns a new string with a specified number of copies of an existing string
replace()Searches a string for a specified value, or a regular expression, and returns a new string where the specified values are replaced
search()Searches a string for a specified value, or regular expression, and returns the position of the match
slice()Extracts a part of a string and returns a new string
split()Splits a string into an array of substrings
startsWith()Checks whether a string begins with specified characters
substr()Extracts the characters from a string, beginning at a specified start position, and through the specified number of character
substring()Extracts the characters from a string, between two specified indices
toLocaleLowerCase()Converts a string to lowercase letters, according to the host’s locale
toLocaleUpperCase()Converts a string to uppercase letters, according to the host’s locale
toLowerCase()Converts a string to lowercase letters
toString()Returns the value of a String object
toUpperCase()Converts a string to uppercase letters
trim()Removes whitespace from both ends of a string
valueOf()Returns the primitive value of a String object

All string methods return a new value. They do not change the original variable.

Read more on W3Schools to know more about each method and properties usage examples, the recommendation is to create your string variable and try using these properties and method and see what results do you get back.

Navjot is a Hobby Blogger from Ireland, and loves to create content to help people. He makes time on weekends to work on this blog. And has a full time position at Verizon Media as Technical Solutions Consultant, which he loves and thrives at. His Skills include in-depth knowledge of SEO, Javascript, Advertising, HTML and Java.