Home  >  Article  >  Web Front-end  >  js replace() text replacement you don't know_javascript skills

js replace() text replacement you don't know_javascript skills

WBOY
WBOYOriginal
2016-05-16 18:32:121108browse
Copy code The code is as follows:

//Convert word-word to wordWord
function camelize( s){
return s.replace(/-(w)/g, function(strMatch, p1){
return p1.toUpperCas();
});
}

The text replacement function replace is applied here. Its general syntax is probably familiar to everyone. Now let’s introduce the situation when its second parameter is a function.

When I posted this function in the group today, someone responded quickly and said that the regular expression above was written incorrectly "/-(w)/ g", and then he quickly understood that his doubt was about this "()". In fact, this bracket is very necessary: ​​

(x) matches x and saves x in variables named $1, $2...$9. In fact, it adds an index to it to facilitate subsequent calls. If you do not add these brackets, an error will occur:


Okay, let’s introduce the meaning of function parameters. Why can this function achieve the specified function?

ECMAScript v3 stipulates that the parameter replacement of the replace() method can be a function instead of a string. In this case, the function is called for each match and the string it returns is used as the replacement text. The first parameter of this function is a string matching the pattern. The next argument is a string that matches the subexpression in the pattern, and there can be 0 or more such arguments. The next parameter is an integer that declares the position in the stringObject where the match occurs. The last parameter is the stringObject itself.

It seems a bit annoying, for example:

Copy code The code is as follows:

camelize(www-rrr);

That is to say, call it. In fact, the strMatch value above is -r, which is the string matching the regular pattern (The first parameter of this function is the string matching the pattern ),

The value of p1 above is r, which refers to the r immediately following - (The next parameter is a string matching the subexpression in the pattern ), which is the index we specify ——“(w)”.

Okay, I think it will be clear what this function is going to do in the future. Haha, that’s it. Additional suggestions are welcome .


[Ctrl A select all Note: If you need to introduce external Js, you need to refresh to execute ]
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