ES6 | String

There are two string types string primitives and string objects in ES6 JavaScript. It wraps up the JavaScript’s string primitives by the helper methods. There are a few numbers of helper methods.

  • string primitives: A primitive gets auto-boxing to its wrapper type when a method of the wrapper type is invoked. It has no helper methods, it is nothing more than a pointer to a raw data memory reference. So here it wraps to a string wrapper. (var i = 1) here it wraps to an integer wrapper.
  • string objects: This is a String Object. The String object is created with the help of String Class. It wraps string primitive data type with a number of helper methods.

Syntax: Therer are three properties in ES6 JavaScript mentioined and described below:

var stringobject = new String(string);

String Properties:



Properties Description
Constructor This property returns a reference to the string function which created the instance prototype.
Length This property returns the length of the string.
Prototype This property a global property which is available with almost all the objects. This allows you to add properties and methods to an object, where the prototyped object has different behavior compared to string primitive auto-boxing.

Below example illuustrates the properties:

Example:

filter_none

edit
close

play_arrow

link
brightness_4
code

<!DOCTYPE html>
<html>
  
<head>
    <script>
        function hero(id, name) {
            this.id = id;
            this.name = name;
        }
  
        // Ojbect e
        var e = new hero(123, "GeeksforGeeks");
  
        // Ojbect e1
        var e1 = new hero(124, "Courses");
  
        // This prototype property is constant for all objects.
        hero.prototype.group = "Edutech";
  
        // Returns object reference
        document.write("Constructor Property = " + e.constructor);
  
        // Returns length
        document.write("<br>Length of emp.name(GeeksforGeeks) = " + e.name.length);
  
        // Returns the new property(group)
        document.write("<br>Prototype(emp1.name=Courses) group = " + e1.group);
  
        // Returns the new property(group) 
        document.write("<br>Prototype(emp.name=GeeksforGeeks) group = " + e.group);
    </script>
</head>
  
<body>
</body>
  
</html>

chevron_right


Output:

Constructor Property = function hero(id, name) { this.id = id; this.name = name; }
Length of emp.name(GeeksforGeeks) = 13
Prototype(emp1.name=Courses) group = Edutech
Prototype(emp.name=GeeksforGeeks) group = Edutech

Methods of string Objects: These are the list of methods available in a String object.

Methods Description
charAt(character) This methods returns the character at the specified index.
charCodet(character) This methods returns the ascii code of the character at the specified index.
concat(string) This methods returns the concatenated string.
indexOf(string) This methods returns the starting index of the given string.
lastIndexOf(string) This methods returns the starting index of the given string’s last occurence.
localeCompare(string) This methods returns 0, if the compared strings the equal, return 1 or -1 if the compared strings are not equal and 1 and -1 depending on the sorted order.
match(RegExp, string) returns the match of the RegExp.
replace(RegExp, string) returns the replaced RegExp in the string.
search(RegExp) This methods searches for the given word or regex. If a string is passed as a parameter it gets converted into RegExp by using new RegExp(obj).
slice(startIndex, endIndex) This methods returns the string from the startIndex to endIndex(excluding) at the specified index.
substr(startIndex, length) returns the string from the startIndex to startIndex+length(excluding) at the specified index.
substring(startIndex, endIndex) returns the string from the startIndex to endIndex(excluding) at the specified index.
split(“separator”, number of splits) returns an array which got splited with the separator and given b=number of splits, if splits are not mentioned then return the whole array.
toLocalLowerCase() returns a string in lowercase with the current locale.
toLocalUpperCase() returns a string in uppercase with the current locale.
toLowerCase() returns the calling string value converted to lowercase.
toupperCase() returns the character at the specified index.
toString() returns the calling string value converted to uppercase.
valueOf() returns the primitive value of a String object.

Below example will illustrate the methods:
Example:

filter_none

edit
close

play_arrow

link
brightness_4
code

<!DOCTYPE html>
<html>
  
<head>
    <script>
        var str = new String("A Online Computer Science Portal");
        var str1 = new String("Computer Science Portal for Geeks");
  
        document.write("str.charAt(0) is = " + str.charAt(0));
        document.write("<br>str.charCodeAt(0) is = " + str.charCodeAt(0));
  
        document.write("<br>");
        document.write("<br>str1.concat('=>Geeks?') = " + str1.concat('=>Geeks?'));
  
        document.write("<br>");
        document.write("<br>str.indexOf('of') = " + str.indexOf('of'));
        document.write("<br>str.lastIndexOf('of') = " + str.lastIndexOf('of'));
  
        document.write("<br>");
        document.write("<br>str.localeCompare( 'A Online Computer Science Portal') = " 
                       + str.localeCompare('A Online Computer Science Portal'));
        document.write("<br>str.localeCompare( 'Computer Science Portal for Geeks') = " 
                       + str.localeCompare('Computer Science Portal for Geeks'));
        document.write("<br>str.localeCompare( 'A Computer Science Portal') = " 
                       + str.localeCompare('A Computer Science Portal'));
  
        document.write("<br>");
        if (str.search("Geeksfor") != -1) {
            document.write("<br>Geeks exist in str.");
        } else {
            document.write("<br>Geeks doesn't exist in str.");
        }
  
        document.write("<br>");
        document.write("<br>str.slice(5, -1) = " + str.slice(5, -1));
        document.write("<br>str.substr(2, 9) = " + str.substr(2, 9));
        document.write("<br>str.substring(2, 9) = " + str.substring(2, 9));
  
        document.write("<br>");
        document.write("<br>str.split(' ') = " + JSON.stringify(str.split(' ')));
        document.write("<br>str.split(':', 4) = " + JSON.stringify(str.split(':', 4)));
        document.write("<br>str.split('of', 4) = " + JSON.stringify(str.split('of', 4)));
  
        document.write("<br>")
        document.write("<br>str1.toLocaleLowerCase( ) = " + str1.toLocaleLowerCase());
        document.write("<br>str1.toLocaleUpperCase() = " + str1.toLocaleUpperCase());
        document.write("<br>str1.toLowerCase( ) = " + str1.toLowerCase());
        document.write("<br>str1.toUpperCase() = " + str1.toUpperCase());
  
        document.write("<br>")
        document.write("<br>str1.toString() = " + str1.toString());
        document.write("<br>str1.valueOf( ) = " + str1.valueOf());
    </script>
</head>
  
</html>

chevron_right


output:

str.charAt(0) is = A
str.charCodeAt(0) is = 65

str1.concat('=>Geeks?') = Computer Science Portal for Geeks=>Geeks?

str.indexOf('of') = -1
str.lastIndexOf('of') = -1

str.localeCompare( 'A Online Computer Science Portal') = 0
str.localeCompare( 'Computer Science Portal for Geeks') = -1
str.localeCompare( 'A Computer Science Portal') = 1

Geeks doesn't exist in str.

str.slice(5, -1) = ine Computer Science Porta
str.substr(2, 9) = Online Co
str.substring(2, 9) = Online

str.split(' ') = ["A","Online","Computer","Science","Portal"]
str.split(':', 4) = ["A Online Computer Science Portal"]
str.split('of', 4) = ["A Online Computer Science Portal"]

str1.toLocaleLowerCase( ) = computer science portal for geeks
str1.toLocaleUpperCase() = COMPUTER SCIENCE PORTAL FOR GEEKS
str1.toLowerCase( ) = computer science portal for geeks
str1.toUpperCase() = COMPUTER SCIENCE PORTAL FOR GEEKS

str1.toString() = Computer Science Portal for Geeks
str1.valueOf( ) = Computer Science Portal for Geeks


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :

Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.