JavaScript的內部對象


JavaScript的內部對象

按創建方式不同分為:使用變量聲明的隱性對象,使用new創建的顯性對象

隱性對象

在賦值和聲明后就是一個隱性對象,隱性對象不支持prototype屬性,也無法隨意擴展對象屬性。

顯性對象

顯性對象支持prototype屬性,支持新建對象屬性。

  • JavaScript提供了十一種內部對象

Boolean對象

Boolean對象是一種數據類型,提供構造函數可以創建布爾數據類型的對象

objboolean=new Boolean();

Funcation對象

JavaScript函數就是一個funcation對象,Funcation對象是函數,如果函數有參數,這些傳入的參數都是argument對象

Global對象

Global對象不能使用new來創建,在腳本語言初始化時會自動創建此對象。

Number對象

Number對象,用於創建數值類型的變量

Object對象

使用Object對象創建自定義對象

RegExp對象

JavaScript的正則表達式對象

5-2JavaScript的string對象

  • 創建string對象

var obj="javascript";或var obj2=new string("JavaScript");兩種方式

string對象提供了一系列的格式編排方法

String 對象方法

方法 描述

anchor() 創建 HTML 錨。

big() 用大號字體顯示字符串。

blink() 顯示閃動字符串。

bold() 使用粗體顯示字符串。

fixed() 以打字機文本顯示字符串。返回<tt>string</tt>中內容

fontcolor() 使用指定的顏色來顯示字符串。

fontsize() 使用指定的尺寸來顯示字符串。

fromCharCode() 從字符編碼創建一個字符串。

link() 將字符串顯示為鏈接。

italics() 使用斜體顯示字符串。

localeCompare() 用本地特定的順序來比較兩個字符串。

slice() 提取字符串的片斷,並在新的字符串中返回被提取的部分。

small() 使用小字號來顯示字符串。

strike() 使用刪除線來顯示字符串。

sub() 把字符串顯示為下標。

sup() 把字符串顯示為上標。

toSource() 代表對象的源代碼。

toString() 返回字符串。

valueOf() 返回某個字符串對象的原始值。

 <script  type ="text/javascript">
        var obj = "JavaScript程序設計";
        document.write("anchor():" + obj.anchor() + "<br/>");
        document.write("big():" + obj.big() + "<br/>");
        document.write("blink():" + obj.blink() + "<br/>");
        document.write("bold():" + obj.bold() + "<br/>");
        document.write("fixed():" + obj.fixed() + "<br/>");
        document.write("fontcolor(red):" + obj.fontcolor("red") + "<br/>");
        document.write("fontsize(6):" + obj.fontsize(6) + "<br/>");
        document.write("italics()" + obj.italics() + "<br/>");
        document.write("link()" + obj.link("https://home.cnblogs.com/u/cyjy/") + "<br/>");
        document.write("small()" + obj.small() + "<br/>");
        document.write("strike():" + obj.strike() + "<br/>");
        document.write("sub():" + obj.sub() + "<br/>");
        document.write("sup():" + obj.sup() + "<br/>");
        
    </script>

  • 字符串的長度與大小寫

length屬性是用於獲取字符串的長度

toLocaleLowerCase() 把字符串轉換為小寫。

toLocaleUpperCase() 把字符串轉換為大寫。

toLowerCase() 把字符串轉換為小寫。

toUpperCase() 把字符串轉換為大寫。

<script  type ="text/javascript">
         var obj = "JavaScript";
         var obj2 = new String("程序設計");
         document.write("英文測試字符串:" + obj  + "<br/>");
         document.write("中文測試字符串:" + obj2 + "<br/>");
         document.write("英文測試字符串length:" + obj.length + "<br/>");
         document.write("中文測試字符串length:" + obj2.length+ "<br/>");
         document.write("英文測試字符串小寫:" + obj.toLowerCase() + "<br/>");
         document.write("英文測試字符串大寫:" + obj.toUpperCase() + "<br/>");
    </script>

  • 獲取字符串的指定字符

charAt(index) 返回在指定位置的字符。

charCodeAt(index) 返回在指定的位置的字符的 Unicode 編碼。

<script  type ="text/javascript">
         var obj = "JavaScript";
         var obj2 = new String("程序設計");
         document.write("英文測試字符串:" + obj + "<br/>");
         document.write("中文測試字符串:" + obj2 + "<br/>");
         document.write("英文測試字符串.charAt(4):" + obj.charAt(4) + "<br/>");
         document.write("英文測試字符串charCodeAt(4):" + obj.charCodeAt(4) + "<br/>");
    </script>

  • 子字符串的搜索

indexOf(string,index) 檢索字符串。返回第一次找到字符串的索引位置,沒有找到返回-1,傳入的string是要搜索的參數,index為要搜索的索引位置

lastIndexOf(string) 從后向前搜索字符串。

match(string) 找到一個或多個正則表達式的匹配。沒有找到返回null

search(string) 檢索與正則表達式相匹配的值。

 

<script  type ="text/javascript">
        var obj = "JavaScript";
        var obj2 = new String("程序設計");
        document.write("英文測試字符串indexOf('a'):" + obj.indexOf('a') + "<br/>");
        document.write("英文測試字符串indexOf('a',2):" + obj.indexOf('a',2) + "<br/>");
        document.write("中文測試字符串.indexOf('程序'):" + obj2.indexOf('程序') + "<br/>");
        document.write("英文測試字符串.lastIndexOf('a') :" + obj.lastIndexOf('a') + "<br/>");
        document.write("英文測試字符串.match('Java'):" + obj.match('Java') + "<br/>");
        document.write("中文測試字符串.match('程序'):" + obj2.match('程序') + "<br/>");
        document.write("英文測試字符串.search('Java'):" + obj.search('Java') + "<br/>");
        document.write("中文測試字符串.search('學校'):" + obj2.search('學校') + "<br/>");
    </script>

  •  子字符串的處理

replace(string1,string2) 替換與正則表達式匹配的子串。將string1換成string2

split() 把字符串分割為字符串數組。返回數組對象。

 substr(index,length) 從起始索引號提取字符串中指定數目的字符。從index開始取出length個字符串

substring(index1,index2) 提取字符串中兩個指定的索引號之間的字符。

concat(string) 連接字符串。將string字符串添加到string對象的字符串之后.

 <script  type ="text/javascript">
        var obj = "JavaScript";
        var obj2 = new String("程序設計");
        document.write("英文測試字符串:" + obj + "<br/>");
        document.write("中文測試字符串:" + obj2 + "<br/>");
        document.write("英文測試字符串.replace('Script', '')" + obj.replace('Script', '') + "<br/>");
        document.write("中文測試字符串.split('序')" + obj2.split('序') + "<br/>");
        document.write("英文測試字符串.substr(2,4)" + obj.substr(2, 4) + "<br/>");
        document.write("英文測試字符串obj2.substring(2,5)" + obj2.substring(2, 5) + "<br/>");
    </script>

將12/5/2012變為2012-5-12;

 var obj = "12/5/2012";          
      var obj = obj.replace(/\//g,"-"); 
  var obj2=obj.replace(/(\d{2})-(\d{1}|\d{2})-(\d{4})/g,'$3-$2-$1');
      alert(obj2); 
 
 
  • JavaScript的Array對象

 JavaScript數據類型中沒有數組,而是使用Array對象來創建數組,每一個數組元素事實上就是Array對象的屬性。
創建一維數組

 new Array();

new Array(size);

new Array(element0, element1, ..., elementn);

<script  type ="text/javascript">
        var arr = new Array(1,2,3,4);
        var arr2 = new Array(3);
        arr2[0] = "one";
        arr2[1] = "two";
        arr2[2] = "three";
        //用循環顯示數組值
        for (var i = 0; i <=arr.length; i++)
        {
            document.write(arr[i] + "<br/>");
        }
        for (var i = 0; i <3; i++) {
            document.write(arr2[i] + "<br/>");
        }
    </script>

 

Array對象的屬性與方法

length屬性獲取數組長度

方法 描述
concat(arry) 連接兩個或更多的數組,並返回結果。將參數合並到當前的數組中
join() 把數組的所有元素放入一個字符串。元素通過指定的分隔符進行分隔。

pop() 刪除並返回數組的最后一個元素
push() 向數組的末尾添加一個或更多元素,並返回新的長度。
shift() 刪除並返回數組的第一個元素
slice() 從某個已有的數組返回選定的元素
splice() 刪除元素,並向數組添加新元素。
toSource() 返回該對象的源代碼。
toString() 把數組轉換為字符串,並返回結果。
reverse() 顛倒數組中元素的順序。
sort
(arry)將數組的所有元素排序

<script  type ="text/javascript">
        var arr = new Array(1,2,3,4);
        var arr2 = new Array(3);
        arr2[0] = "one";
        arr2[1] = "two";
        arr2[2] = "three";
        function showarr(arr) {
            for (var i = 0; i < arr.length; i++) {
                document.write(arr[i] + ",");

            }
        }
        document.write("數組長" + arr2.length + "<br/>");
        document.write(arr2.join() + "<br/>");
        arr2.reverse();//反轉數組
        document.write("<br/>");
        showarr(arr);
        document.write("<br/>");
        arr = arr.concat(arr2);//連接兩個數組
        showarr(arr);
    </script>

JavaScript的多維數組

<script  type ="text/javascript">
          var arr = new Array(3);
          for (var i = 0; i < 3; i++)
          {
              arr[i] = new Array(2);
          }
          arr[0][0] = "1";
          arr[0][1] = "2";
          arr[1][0] = "3";
          arr[1][1] = "4";
          arr[2][0] = "5";
          arr[2][1] = "6";
          for (var j= 0; j< arr.length;j++)
          {
              for (i = 0; i < arr[i].length; i++) {
                  document.write(arr[j][i]);
              }
                  document.write("<br/>");
              
          }
    </script>

 

  • JavaScript的Date對象

Date對象可以獲取計算機的系統時間和日期,並且提供相關的方法將它轉化為所需的日期數據。

創建Date對象

var youDate=new Date()

Date 對象會自動把當前日期和時間保存為其初始值。

Date() 返回當日的日期和時間。
getDate() 從 Date 對象返回一個月中的某一天 (1 ~ 31)。
getDay() 從 Date 對象返回一周中的某一天 (0 ~ 6),也就是星期日到星期六。
getMonth() 從 Date 對象返回月份 (0 ~ 11)。
getFullYear() 從 Date 對象以四位數字返回年份。
getYear() 請使用 getFullYear() 方法代替。
getHours() 返回 Date 對象的小時 (0 ~ 23)。
getMinutes() 返回 Date 對象的分鍾 (0 ~ 59)。
getSeconds() 返回 Date 對象的秒數 (0 ~ 59)。
getMilliseconds() 返回 Date 對象的毫秒(0 ~ 999)。
getTime() 返回 1970 年 1 月 1 日至今的毫秒數。

 

 

<script  type ="text/javascript">
        var youDate = new Date();
        document.write("系統日期:" + youDate.getDate());
        document.write("<br/>");
        document.write("系統時間:" + youDate.getHours() + ":" + youDate.getMinutes()+":"+youDate.getSeconds());
    </script>

設置時間和日期

setDate() 設置 Date 對象中月的某一天 (1 ~ 31)。
setMonth() 設置 Date 對象中月份 (0 ~ 11)。
setFullYear() 設置 Date 對象中的年份(四位數字)。
setYear() 請使用 setFullYear() 方法代替。
setHours() 設置 Date 對象中的小時 (0 ~ 23)。
setMinutes() 設置 Date 對象中的分鍾 (0 ~ 59)。
setSeconds() 設置 Date 對象中的秒鍾 (0 ~ 59)。
setMilliseconds() 設置 Date 對象中的毫秒 (0 ~ 999)。
setTime() 以毫秒設置 Date 對象。

 JavaScript的Date對象可以獲取系統時間,只需定時執行JavaScript函數就可以建立一個網頁時鍾,同時需要使用setTimeout(),參數中可以設置間隔多少時間來執行函數,clearTimeout()可以清除定時器

  • JavaScript的Math對象

Math對象不同於其他JavaScript對象,Math對象是由腳本語言引擎所創建的,不需要使用new來創建。

max(x,y) 返回 x 和 y 中的最高值。
min(x,y) 返回 x 和 y 中的最低值。
pow(x,y) 返回 x 的 y 次冪。
random() 返回 0 ~ 1 之間的隨機數。

需要獲得更大的隨機數乘以相關的倍數就可以了

<script  type ="text/javascript">
        var num = Math.round(Math.random() * 100);
        document.write("0~100之間的隨機數"+num);
    </script>

JavaScript的Error對象

try catch finally處理例外。

JavaScript對象的共享屬性和方法

屬性 constructor屬性可以獲取創建對象使用的構造函數的函數名稱

tostring()方法和value()可以顯示對象的內容。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM