Name

String.slice() — extract a substring

Synopsis

string.slice(start, end)

Arguments

start

The string index where the slice is to begin. If negative, this argument specifies a position measured from the end of the string. That is, −1 indicates the last character, −2 indicates the second from last character, and so on.

end

The string index immediately after the end of the slice. If not specified, the slice includes all characters from start to the end of the string. If this argument is negative, it specifies a position measured from the end of the string.

Returns

A new string that contains all the characters of string from and including start, and up to but not including end.

Description

slice() returns a string containing a slice, or substring, of string. It does not modify string.

The String methods slice(), substring(), and the deprecated substr() all return specified portions of a string. slice() is more flexible than substring() because it allows negative argument values. slice() differs from substr() in that it specifies a substring with two character positions, while substr() uses one position and a length. Note also that String.slice() is an analog of Array.slice().

Example

var s = "abcdefg";
s.slice(0,4)    // Returns "abcd"
s.slice(2,4)    // Returns "cd"
s.slice(4)      // Returns "efg"
s.slice(3,-1)   // Returns "def"
s.slice(3,-2)   // Returns "de"
s.slice(-3,-1)  // Should return "ef"; returns "abcdef" in IE 4

Bugs

Negative values for start do not work in Internet Explorer 4 (but they do in later ...

Get JavaScript: The Definitive Guide, 6th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.