How to use the String object in JavaScript

1 Answer

0 votes
"use strict";

/*
 * String Object Example
 * ---------------------
 * Demonstrates:
 * - Creating strings
 * - Accessing characters
 * - Common String methods
 * - String searching
 * - String modification
 * - Template literals
 * - Custom functions
 */


/*
The most commonly used methods are:
-----------------------------------
trim()
toUpperCase()
toLowerCase()
includes()
startsWith()
endsWith()
slice()
replace()
split()
*/

// Create a string (recommended approach)
const message = "  Hello JavaScript World!  ";

/**
 * Converts a string to title case.
 *
 * Example:
 * "hello world" => "Hello World"
 *
 * @param {string} text
 * @returns {string}
 */
function toTitleCase(text) {
    return text
        .toLowerCase()
        .split(" ")
        .map(word => {
            if (word.length === 0) {
                return "";
            }

            return word[0].toUpperCase() + word.slice(1);
        })
        .join(" ");
}

/**
 * Counts the number of words in a string.
 *
 * @param {string} text
 * @returns {number}
 */
function countWords(text) {
    return text
        .trim()
        .split(/\s+/)
        .filter(word => word.length > 0)
        .length;
}

// --------------------------------------------------
// Original String
// --------------------------------------------------

console.log("=== Original String ===");
console.log(message);

// --------------------------------------------------
// Remove Leading and Trailing Spaces
// --------------------------------------------------

const trimmedMessage = message.trim();

console.log("\n=== trim() ===");
console.log(trimmedMessage);

// --------------------------------------------------
// String Length
// --------------------------------------------------

console.log("\n=== length ===");
console.log(trimmedMessage.length);

// --------------------------------------------------
// Access Characters
// --------------------------------------------------

console.log("\n=== Character Access ===");

console.log(trimmedMessage[0]);
console.log(trimmedMessage.charAt(1));

// --------------------------------------------------
// Convert Case
// --------------------------------------------------

console.log("\n=== Case Conversion ===");

console.log(trimmedMessage.toUpperCase());
console.log(trimmedMessage.toLowerCase());

// --------------------------------------------------
// Search Within a String
// --------------------------------------------------

console.log("\n=== Search Methods ===");

console.log(trimmedMessage.includes("JavaScript"));
console.log(trimmedMessage.startsWith("Hello"));
console.log(trimmedMessage.endsWith("World!"));

console.log(trimmedMessage.indexOf("JavaScript"));

// --------------------------------------------------
// Extract Text
// --------------------------------------------------

console.log("\n=== Extract Text ===");

console.log(trimmedMessage.slice(6, 16));
console.log(trimmedMessage.substring(6, 16));

// --------------------------------------------------
// Replace Text
// --------------------------------------------------

console.log("\n=== Replace Text ===");

const updatedMessage = trimmedMessage.replace(
    "JavaScript",
    "TypeScript"
);

console.log(updatedMessage);

// --------------------------------------------------
// Split into Array
// --------------------------------------------------

console.log("\n=== split() ===");

const words = trimmedMessage.split(" ");

console.log(words);

// --------------------------------------------------
// Repeat a String
// --------------------------------------------------

console.log("\n=== repeat() ===");

console.log("=".repeat(20));

// --------------------------------------------------
// Template Literals
// --------------------------------------------------

console.log("\n=== Template Literals ===");

const language = "JavaScript";
const version = "ES2024";

const description =
    `${language} programming (${version})`;

console.log(description);

// --------------------------------------------------
// Custom Function Examples
// --------------------------------------------------

console.log("\n=== Custom Functions ===");

const title = toTitleCase("learning javascript is fun");

console.log(title);

const wordCount = countWords(trimmedMessage);

console.log(`Word count: ${wordCount}`);


/*
run:

=== Original String ===
  Hello JavaScript World!  

=== trim() ===
Hello JavaScript World!

=== length ===
23

=== Character Access ===
H
e

=== Case Conversion ===
HELLO JAVASCRIPT WORLD!
hello javascript world!

=== Search Methods ===
true
true
true
6

=== Extract Text ===
JavaScript
JavaScript

=== Replace Text ===
Hello TypeScript World!

=== split() ===
[ 'Hello', 'JavaScript', 'World!' ]

=== repeat() ===
====================

=== Template Literals ===
JavaScript programming (ES2024)

=== Custom Functions ===
Learning Javascript Is Fun
Word count: 3

*/

 



answered Oct 16 by avibootz
...