国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Javascript基礎教程之數據類型 (字符串 String)

2024-05-06 16:14:38
字體:
來源:轉載
供稿:網友
javascript一共有9種數據類型,分別是字符串 String、數值型 Number、布爾型 Boolean、未定義 Undefine、空值 Null、對象 Object、引用Refernce、列表型 List、完成型 Completion,我們今天首先來看看(字符串 String)
 

一.字符串

 

復制代碼代碼如下:

var language = "javascript";
var language = 'javascript';

 

字符串可以使用雙引號和單引號,根據個人愛好而定。

字符串具有length屬性,可以返回變量中字符串的個數。

 

復制代碼代碼如下:

var test1 = "teacher" ;
    document.write(test1.length);
//輸出test1的字符串個數:7

 

反之,想獲取指定位置的字符,可以使用charAt()函數(第一個字符為0,第二個字符為1,依次類推)

 

復制代碼代碼如下:

 var test1 = "teacher" ;
    document.write(test1.charAt(1));
//運行結果為:e ,

 

如果想取得變量中的字符串,可以采用slice(),substring()或者substr()函數。

其中,substring()和slice()都接受兩個參數

 

復制代碼代碼如下:

    var test1 = "teacher" ;
    document.write(test1.substring(1)+"<br>");// 輸出eacher
    document.write(test1.substring(1,4)+"<br>"); //輸出eac
    document.write(test1.slice(1,4)+"<br>"); //輸出eac
    document.write(test1.slice(4)+"<br>"); //輸出her
    document.write(test1 + "<br>");//完整字符串

 

 從以上內容看出,substring()和slice()都不改變字符串內容,只返回字符串的內容。

substing()和slice()的區別主要是對負數的處理不同。

負數參數對于slice()而言,從字符串末尾往前計數,對于substring()來說,則是忽略負數,從0開始處理,并將兩個參數中較小的數字作為起始位,較大的作為結束位。

例如substring(2,-3)等同于substing(2,0),也就是等同于substring(0,2)。

 

復制代碼代碼如下:

   var test1 = "teacher" ;
    document.write(test1.substring(2,-3)+"<br>"); //te
    document.write(test1.substring(2,0)+"<br>"); //te
    document.write(test1.substring(0,2)+"<br>"); //te
    document.write(test1.slice(2,-3)+"<br>"); //ac
    document.write(test1 + "<br>"); //teacher

 

 substring()和substr()的區別,舉例說明。

 

復制代碼代碼如下:

    var tt,ss ;
    var s = "hellobeijing";
    tt = s.substring(2,8)+"<br>";
    ss = s.substr(2,8);
    document.write(tt);//輸出:llobeij 輸出下標2到下標8之間的字符
    document.write(ss); //輸出:llobeiji (輸出下標2后的8個字符)

 

 對于用法,另一博友有更多實例(地址)

在搜索字符串上,Javascript提供了indexof()和lastindexof()兩個函數。

 

復制代碼代碼如下:

 var s = "woaibeijing";
    dd = s.indexOf("e")+"<br>";//從前往后
    ee = s.indexOf("e",3)+"<br>";//可選參數,從第幾個字符往后查找
    ff = s.lastIndexOf("e")+"<br>";//從后往前
    gg = s.lastIndexOf("e",3)+"<br>"; //可選參數,從第幾個字符往前查找
    hh = s.lastIndexOf("H")+"<br>";
    document.write(dd);
    document.write(ff);
    document.write(ee);
    document.write(gg);
    document.write(hh);

 

另外,indexof()和lastindexof()的用法推薦查看這篇文章。

JS中的indexOf和lastIndexOf是處理字符串的一個非常好用的函數,下面對它們的定義、用法、注意事項以及使用建議分別作介紹。

1、strObj.indexOf(subString[, startIndex])

功能:返回源字符串內第一次出現指定子字符串的首個字符在源字符串中的索引值(源字符串內第n個字符的索引值為n-1),是整數。

參數含義:

strObj是源字符串,必選項。

subString是在源字符串對象中查找的子字符串,必選項。

startIndex是開始索引值,indexOf函數是從源字符串的索引值為startIndex的字符(即第startIndex+1個字符)開始查找,可選項。省略時,從源字符串索引值為0的字符(即第1個字符)開始查找。

實例分析:

用法1(不指定startIndex值):var i="huoshandao.com".indexOfOf("a"):則i=5
                                               相當于var i="huoshandao.com".indexOf("a",0)
用法2(指定startIndex值):var i="huoshandao.com".indexOf("a",6):則i=8
提示:可以用alert(i);語句測試結果,以下例子也一樣。

注意事項

1)strObj既可以是字符串,也可以是字符串變量。
     [例子]
     strObj為字符串:var i="huoshandao.com".indexOf("."):
     strObj為字符串變量:var str="huoshandao.com";var i=str.indexOf(".");
2)subString不能為空字符串,如果為空字符串,返回值為0,但可以是空格。
     [例子]
     subString為空字符串:var i="huo shan dao".indexOf(""):則i=0
     subString為空格字符串:var i="huo shan dao".indexOf(" "):則i=3
3)第1個字符的startIndex值是0,是最小索引值;第2個字符的startIndex值是1;最后一個字符的startIndex值則是源字符串長度減1,是最大索引值。
4)如果沒有找到子字符串,則返回 -1。
     [例子]
     var i="huoshandao.com".indexOf("huosan"):則i=-1
5)如果startIndex是負數,則相當于startIndex等于0的情況。如果它大于最大索引值,則相當于startIndex等于最大索引值的情況。
    [例子]
     startIndex為負數: var i="huoshandao.com".indexOf(".",-3);則i=10
                                   與var i="huoshandao.com".indexOf(".",0);結果一樣
     startIndex大于等于字符串長度:var i="huoshandao.com_".indexOf("_",16);則i=-1
                                                       與var i="huoshandao.com_".indexOf("_",14);i=14

2、strObj.lastIndexOf(subString[, startIndex])

indexOf 函數是從左向右查找,但實際應用中我們有時想得到從右向左出現某個字符或字符串的首個字符索引值,針對這種情況,JS給出另外一個函數 lastIndexOf來解決這個問題,使用方法和indexOf相似,只是它從右向左查找而已,具體就不再重復,簡單舉幾個例子,和indexOf作比 較:

例1:var i="huo.shan.dao.com".lastIndexOf(".");則i=12而var i="huo.shan.dao.com".indexOf(".");的i=3
例2:var i="huoshandao.com_".lastIndexOf("_",16);則i=14而var i="huoshandao.com_".indexOf("_",16);則i=-1

3、使用建議

為了避免出乎意料的結果,除非有特殊用途,建議遵循以下原則:

1、startIndex為非負數,并且不大于最大索引值。如果startIndex是變量,要先判斷其值是否在這個范圍內。
2、如果子字符串subString是變量的話,要先判斷其是否為空再使用indexOf或lastIndexOf函數。
3、輸入子字符串時要特別注意全角字符和半角字符的區別。
4、注意indexOf和lastIndexOf里面的大小寫,JS對大小寫非常敏感。建議用Dreamweaver編程,如果函數名大小寫寫錯的話,函數顏色是黑色,寫對的話則會變成另外一種顏色。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 剑川县| 舟曲县| 湘潭县| 南康市| 墨脱县| 普兰县| 佳木斯市| 丰城市| 陇川县| 兰州市| 永和县| 桐庐县| 阿拉善右旗| 新津县| 东安县| 长垣县| 凉城县| 玛曲县| 普格县| 宝坻区| 上林县| 临朐县| 镇原县| 茌平县| 依兰县| 红安县| 图片| 灵寿县| 建平县| 肃北| 昭苏县| 福泉市| 天峨县| 化州市| 竹山县| 东丰县| 扎赉特旗| 从江县| 鄯善县| 正宁县| 芒康县|