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()可以显示对象的内容。

 

posted @ 2017-02-22 17:37  随风而至  阅读(2603)  评论(0编辑  收藏  举报