Skip to content

Commit 62abb88

Browse files
fix: Side-by-Side Comparison
1 parent efcfc02 commit 62abb88

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

data/blog/software-development/web-development/frontend/javascript/slice-vs-substring-vs-substr-complete-javascript-string-methods-comparison.mdx

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -750,40 +750,40 @@ console.log(str.slice(-4, -1)); // "rip" (from index -4 to -1, exclusive)
750750
Let's compare all three methods with the same inputs to see how they differ:
751751

752752
```javascript
753-
const str = "Hello, World!";
753+
const str = "JavaScript"; // Length: 10
754754

755755
console.log("Original string:", str);
756756
console.log("String length:", str.length);
757757

758758
// Example 1: Basic extraction
759-
console.log("\n=== Example 1: slice(0, 5) ===");
760-
console.log("slice(0, 5):", str.slice(0, 5)); // "Hello"
761-
console.log("substring(0, 5):", str.substring(0, 5)); // "Hello"
762-
console.log("substr(0, 5):", str.substr(0, 5)); // "Hello" (5 characters)
759+
console.log("\n=== Example 1: Basic extraction (0, 4) ===");
760+
console.log("slice(0, 4):", str.slice(0, 4)); // "Java"
761+
console.log("substring(0, 4):", str.substring(0, 4)); // "Java"
762+
console.log("substr(0, 4):", str.substr(0, 4)); // "Java" (4 characters)
763763

764764
// Example 2: Negative start
765765
console.log("\n=== Example 2: Negative start (-6) ===");
766-
console.log("slice(-6):", str.slice(-6)); // "World!"
767-
console.log("substring(-6):", str.substring(-6)); // "Hello, World!" (treated as 0)
768-
console.log("substr(-6):", str.substr(-6)); // "World!"
766+
console.log("slice(-6):", str.slice(-6)); // "Script"
767+
console.log("substring(-6):", str.substring(-6)); // "JavaScript" (treated as 0)
768+
console.log("substr(-6):", str.substr(-6)); // "Script"
769769

770770
// Example 3: Start > End
771-
console.log("\n=== Example 3: Start > End (7, 2) ===");
772-
console.log("slice(7, 2):", str.slice(7, 2)); // "" (empty)
773-
console.log("substring(7, 2):", str.substring(7, 2)); // "llo," (swaps to substring(2, 7))
774-
console.log("substr(7, 2):", str.substr(7, 2)); // "Wo" (7th index, length 2)
771+
console.log("\n=== Example 3: Start > End (5, 3) ===");
772+
console.log("slice(5, 3):", str.slice(5, 3)); // "" (empty)
773+
console.log("substring(5, 3):", str.substring(5, 3)); // "vaS" (swaps to substring(3, 5))
774+
console.log("substr(5, 3):", str.substr(5, 3)); // "cri" (5th index, length 3)
775775

776776
// Example 4: Negative end
777777
console.log("\n=== Example 4: Negative end (0, -6) ===");
778-
console.log("slice(0, -6):", str.slice(0, -6)); // "Hello,"
778+
console.log("slice(0, -6):", str.slice(0, -6)); // "Java"
779779
console.log("substring(0, -6):", str.substring(0, -6)); // "" (negative treated as 0, becomes substring(0, 0))
780780
console.log("substr(0, -6):", str.substr(0, -6)); // "" (negative length treated as 0)
781781

782782
// Example 5: Omitted end parameter
783-
console.log("\n=== Example 5: Start only (7) ===");
784-
console.log("slice(7):", str.slice(7)); // "World!"
785-
console.log("substring(7):", str.substring(7)); // "World!"
786-
console.log("substr(7):", str.substr(7)); // "World!"
783+
console.log("\n=== Example 5: Start only (4) ===");
784+
console.log("slice(4):", str.slice(4)); // "Script"
785+
console.log("substring(4):", str.substring(4)); // "Script"
786+
console.log("substr(4):", str.substr(4)); // "Script"
787787
```
788788

789789
## Real-World Use Cases

0 commit comments

Comments
 (0)