ホームページ > ウェブフロントエンド > jsチュートリアル > 一般的な文字列操作関数と JavaScript_javascript スキルでの使用法の概要

一般的な文字列操作関数と JavaScript_javascript スキルでの使用法の概要

WBOY
リリース: 2016-05-16 16:01:11
オリジナル
1100 人が閲覧しました

この記事の例では、JavaScript での一般的な文字列操作関数と使用法をまとめています。皆さんの参考に共有してください。具体的な分析は次のとおりです。

私は最近、フロントエンドのインターン採用のためのいくつかの筆記試験に参加しましたが、Qunar.com の筆記試験問題、淘宝網の筆記試験問題など、多くの筆記試験問題で文字列処理がテストされることがわかりました。筆記試験を頻繁に受けたり、受けたことがある人なら、私と同じように、フロントエンドの採用プロセスで最も一般的な質問の種類の 1 つが文字列処理であることに気づくと思います。これらの質問には、試験官の視点で考えてください。知っているかどうかではなく、○○マニュアルや○○ガイド、Baidu や Google を借りずに比較的簡潔に書けるかどうかがテストされます。答え。残念なことに、多くの開発者は、頻繁に使用される文字列処理関数の使用法をしっかりと覚えておらず、常に XX マニュアル、XX ガイド、または Baidu Google を参照しなければなりません。その結果、これらの非常に重要な基本知識が十分に確立されていないため、これらの質問に遭遇した場合は、N レベルのネストされた for ループを使用して 1 つずつ調べる必要があります。この種の質問をするときに for ループを多用していることに気付いた場合は、間違った記述をしている可能性があるので注意してください。これらのことを過小評価しないでください。これらは仕事を見つけることや日々の成長に大きな役割を果たす可能性があります。さて、これ以上話さないで、一つずつまとめてみましょう。いくつかの漏れがあることは避けられませんが、見つけた場合は、お気軽に追加するか、プライベートメッセージを送信してください。

1. 文字列変換

文字列変換は最も基本的な要件であり、次の 3 つの方法のいずれかを使用して変換できます。

var num= 19; // 19
var myStr = num.toString(); // "19"
ログイン後にコピー
次のこともできます:

var num= 19; // 19
var myStr = String(num); // "19"
ログイン後にコピー
または、さらに単純:

var num= 19; // 19
var myStr = "" +num; // "19"
ログイン後にコピー

2. 文字列の分割

文字列の分割とは、文字列を複数の文字列に分割することです。JavaScript には、次のような非常に便利な関数が用意されています。

var myStr = "I,Love,You,Do,you,love,me";
var substrArray = myStr .split(",");
// ["I", "Love", "You", "Do", "you", "love", "me"];
var arrayLimited = myStr .split(",", 3);
// ["I", "Love", "You"];
ログイン後にコピー
split() の 2 番目のパラメータは、返される文字列配列の最大長を示します。

3. 文字列の長さを取得します

文字列の長さは開発でよく使用されます。次のように非常に簡単です。

var myStr = "I,Love,You,Do,you,love,me";
var myStrLength = myStr.length; //25
ログイン後にコピー
4. クエリ部分文字列

多くの人は、これらの JavaScript の組み込みメソッドを忘れたり、その具体的な使用法を忘れたりするため、質問を行うときに for ループをネストする必要があります。

最初の関数:indexOf() は、文字列の先頭から検索し、見つからない場合は、対応する座標を返します。以下のように:

2 番目の関数: lastIndexOf() は、文字列の末尾から検索し、見つからない場合は、対応する座標を返します。以下のように:
var myStr = "I,Love,you,Do,you,love,me";
var index = myStr.indexOf("you"); // 7 ,基于0开始,找不到返回-1
ログイン後にコピー

上記の 2 つの関数は、検索の開始位置を示す 2 番目のオプションのパラメーターも受け取ります。
var myStr = "I,Love,you,Do,you,love,me";
var index = myStr.lastIndexOf("you"); // 14
ログイン後にコピー

5. 文字列の置換

一般的な質問では、文字列を検索して独自の文字列に置き換えるよう求められることがよくあります。

デフォルトでは、最初に見つかったもののみが置換されます。グローバルに置換する場合は、次のような通常のグローバル フラグを設定する必要があります。
var myStr = "I,love,you,Do,you,love,me";
var replacedStr = myStr.replace("love","hate");
//"I,hate,you,Do,you,love,me"
ログイン後にコピー

さらに詳しい説明については、以下を参照してください。
http://www.jb51.net/w3school/js/jsref_replace.htm
var myStr = "I,love,you,Do,you,love,me";
var replacedStr = myStr.replace(/love/g,"hate");
//"I,hate,you,Do,you,hate,me"
ログイン後にコピー

6. 指定された位置の文字またはその文字エンコード値を検索します

特定の位置にある文字を検索するには、次の関数を使用できます:

同様に、その兄弟関数の 1 つは、次のような、対応する位置の文字エンコーディング値を検索することです。
var myStr = "I,love,you,Do,you,love,me";
var theChar = myStr.charAt(8);// "o",同样从0开始
ログイン後にコピー

7. 文字列の連結
var myStr = "I,love,you,Do,you,love,me";
var theChar = myStr.charCodeAt(8); //111

ログイン後にコピー
文字列の連結操作は、次のような加算演算子を使用するだけで簡単になります。

同様に、JavaScript には次のような関連関数も付属しています。

var str1 = "I,love,you!";
var str2 = "Do,you,love,me?";
var str = str1 + str2 + "Yes!";
//"I,love,you!Do,you,love,me?Yes!"
ログイン後にコピー

concat() 関数は複数のパラメーターを持ち、複数の文字列を渡し、複数の文字列を結合できます。

var str1 = "I,love,you!";
var str2 = "Do,you,love,me?";
var str = str1.concat(str2);
//"I,love,you!Do,you,love,me?"
ログイン後にコピー
8. 文字列の切断と抽出

文字列から抽出して切り取るには、次の 3 つの方法があります。

最初の方法は、slice(): を使用することです。

2 番目に、substring():

を使用します。
var myStr = "I,love,you,Do,you,love,me";
var subStr = myStr.slice(1,5);//",lov"
ログイン後にコピー

3 番目の方法は、substr():

を使用することです。
var myStr = "I,love,you,Do,you,love,me";
var subStr = myStr.substring(1,5); //",lov"
ログイン後にコピー

最初と 2 番目のメソッドとは異なり、上記の結果に示されているように、substr() の 2 番目のパラメーターはインターセプトされた文字列の最大長を表します。

var myStr = "I,love,you,Do,you,love,me";
var subStr = myStr.substr(1,5); //",love"
ログイン後にコピー
9. 文字列の大文字と小文字の変換

大文字または小文字の文字列に変換するために一般的に使用される関数は次のとおりです:

10. 文字列マッチング
var myStr = "I,love,you,Do,you,love,me";
var lowCaseStr = myStr.toLowerCase();
//"i,love,you,do,you,love,me";
var upCaseStr = myStr.toUpperCase();
//"I,LOVE,YOU,DO,YOU,LOVE,ME"
ログイン後にコピー
文字列のマッチングには、正規表現についてある程度の理解が必要な場合があります。まず match() 関数を見てみましょう。

如你所见,match()函数在字符串上调用,并且接受一个正则的参数。来看看第二个例子,使用exec()函数:

var myStr = "I,love,you,Do,you,love,me";
var pattern = /love/;
var result = pattern .exec(myStr);//["love"]
console.log(result .index);//2
console.log(result.input );//I,love,you,Do,you,love,me
ログイン後にコピー

简单吧,仅仅是把正则和字符串换了个位置,即exec()函数是在正则上调用,传递字符串的参数。对于上面两个方法,匹配的结果都是返回第一个匹配成功的字符串,如果匹配失败则返回null.

再来看一个类似的方法search(),如:

var myStr = "I,love,you,Do,you,love,me";
var pattern = /love/;
var result = myStr.search(pattern);//2
ログイン後にコピー

仅返回查到的匹配的下标,如果匹配失败则返回-1.

11、字符串比较

比较两个字符串,比较是规则是按照字母表顺序比较的,如:

var myStr = "chicken";
var myStrTwo = "egg";
var first = myStr.localeCompare(myStrTwo); // -1
first = myStr.localeCompare("chicken"); // 0
first = myStr.localeCompare("apple"); // 1
ログイン後にコピー

12、举例

最后我们来看一道前端笔试题,去哪儿网的,相信很多孩子都做到过这个题了。题目:写一个getSuffix函数,用于获得输入参数的后缀名,例如输入abcd.txt,返回txt。附上我的答案:

function getSuffix(file){
   return file.slice(file.lastIndexOf(".") + 1,file.length); 
}
ログイン後にコピー

结束语

相信JavaScript中字符串操作的函数应该不止这几个,但是上面列的这些应该都是非常常用的。如果有哪些需要补充的,欢迎补充!希望看到这些以后,再面对字符串的笔试面试题你能非常从容的面对。

希望本文所述对大家的javascript程序设计有所帮助。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート