Home  >  Article  >  Web Front-end  >  Detailed explanation of indexOf technology in javascript_javascript skills

Detailed explanation of indexOf technology in javascript_javascript skills

WBOY
WBOYOriginal
2016-05-16 16:00:281080browse

JavaScript provides several techniques to search for a word, number, or other string of characters in a string. Searching can be convenient, for example, if you want to know which web browser your visitors use to view your site. Each web browser identifies information about itself in a string that contains many different statistics. You can see this string by adding the following JavaScript to a web page and previewing it in a web browser:

<script>
alert(navigator.userAgent);
</script>

Navigator is a web browser object, and userAgent is a property of the navigator object. The userAgent attribute contains a long list of information. For example, for Internet Explorer 7 running on Windows XP, the userAgent attribute is: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1). So if you want to see if the web browser is IE 7, you can just search for "MSIE 7" in the userAgent string. One of the ways to search a string is the indexOf() method. Add a period after the string, then indexOf(), and provide the string you are looking for. The basic structure is as follows:
string.indexOf('string to look for')

The indexOf() method returns a number: if the search string is not found, the method returns -1. So if you want to check Internet Explorer, you can do this:

var browser=navigator.userAgent;//this is a string
if(browser.indexOf('MSIE')!=-1){
//this is Internet Explorer
}

In this example, if indexOf() does not find 'MSIE' in the userAgent string, it will return -1, so the condition tests to see if the result is not equal to (!=) -1. When the indexOf() method does find the string it is searching for, it returns a number equal to the beginning of the string it is looking for. The following example makes things a little clearer:

var quote='To be, or not to be.'
var searchPosition=quote.indexOf('To be');//returns 0

Here, indexOf() searches for the position of 'To be' in the string 'To be, or not to be.' The larger string starts with 'To be', so indexOf() finds 'To be' in the first position. However, the way it is programmed, the first position is considered to be 0, the second letter (o) is at position 1, and the third letter (a space in this example) is 2.

The indexOf() method starts searching from the beginning of the string. You can also use the lastIndexOf() method to start searching from the end of the string. For example, in Shakespeare's quote, the word 'be' appears in two places, so, you can use indexOf() to find the first 'be' and lastIndexOf() to find the last 'be':

var quote="To be, or not to be."
var firstPosition=quote.indexOf('be');//returns 3
var lastPosition=quote.lastIndexOf('be');//returns 17

In both examples, if 'be' does not exist anywhere in the string, the result will be -1; if there is only one instance of the search string, indexO f() and lastIndexOf() will Returns the same value, which is the position within the larger string where the search string begins.

The above is the entire content of this article, I hope you all like it.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn