JavaScript----对象

##基本对象

Function:函数对象

Function:函数(方法)对象
* 1、创建
* 1、var fun = new Function(形参列表,方法体);//别用,知道就行
* 2、function 方法名称(形参列表){
* 方法体
* }
* 3、 var 方法名 = function(形参列表){
* 方法体
* }
* 2、方法
* 3、属性
* length:代表形参的个数
* 4、特点
* 1、方法定义时,形参的类型不用写,返回值类型也不写
* 2、方法是一个对象,如果定义名称相同的方法,会覆盖前一个方法
* 3、在JS中,方法的调用只与方法的名称有关,和参数列表无关
* 4、在方法声明中有一个隐藏的内置对象(数组),arguments,封装所有的实际参数
* 5、调用
* 方法名称(实际参数列表);
<script>
    /*Function:函数(方法)对象
    * 1、创建
    *   1、var fun = new Function(形参列表,方法体);//别用,知道就行
    *   2、function 方法名称(形参列表){
    *           方法体
    * }
    *   3、 var 方法名 = function(形参列表){
    *       方法体
    * }
    * 2、方法
    * 3、属性
    *       length:代表形参的个数
    * 4、特点
    *   1、方法定义时,形参的类型不用写,返回值类型也不写
    *   2、方法是一个对象,如果定义名称相同的方法,会覆盖前一个方法
    *   3、在JS中,方法的调用只与方法的名称有关,和参数列表无关
    *   4、在方法声明中有一个隐藏的内置对象(数组),arguments,封装所有的实际参数
    * 5、调用
    *     方法名称(实际参数列表);
    * */
    //1、创建方式1
    var fun1 = new Function("a","b","alert(a);");
    //调用方法1
    //fun1(3,4);
    alert(fun1.length);
    //2、创建方式2
    function fun2(a,b) {
        alert(a+b);
    }
    //调用方法2
    fun2(3,4);
    //3、创建方式3
    var fun3 = function (a,b) {
        document.write(a+b)
    }
    //调用方法3
    fun3(3,4);
    //内置对象arguments 求任意个数的和
    function add() {
        var sum ;
        for (var i =0; i < arguments.length; i++){
            sum += arguments[i];
        }
        return sum;
    }
</script>

Array:数组对象

    1、创建
* 1、var arr = new Array(元素列表);
* 2、var arr = new Array(默认长度);
* 3、var arr = [元素列表];
* 2、方法
* join():将数组中的元素按指定的分隔符拼接为字符串。
* push():向数组的尾部添加元素
* 3、属性
* length:数组长度
* 4、特点:
* 1、js中,数组元素的类型是可变的。
* 2、js中,数组的长度是可变的。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Array对象</title>
</head>
<script>
    /*
    * Array:数组对象
    *   1、创建
    *       1、var arr = new Array(元素列表);
    *       2、var arr = new Array(默认长度);
    *       3、var arr = [元素列表];
    *   2、方法
    *       join():将数组中的元素按指定的分隔符拼接为字符串。
    *       push():向数组的尾部添加元素
    *   3、属性
    *       length:数组长度
    *   4、特点:
    *       1、js中,数组元素的类型是可变的。
    *       2、js中,数组的长度是可变的。
    * */
    //1、创建方式1
    var arr1 = new Array(1,2,3);
    var arr2= new Array(5);
    var arr3 = [1,2,3,4];
    document.write(arr1+"<br>");
    document.write(arr2+"<br>");
    document.write(arr3+"<br>");
    //join方法
    document.write(arr3.join("-")+"<br>");
    arr3.push(5);
    document.write(arr3);
</script>
<body>

</body>
</html>

Boolean

Date

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Date对象</title>
</head>
<body>
<script>
    /*
    * Date:日期对象:
    *   1、创建:
    *       var date = new Date();
    *   2、方法:
    *       toLocaleString(); 返回当前date对应的事件本地字符串格式
    *       getTime();获取毫秒值。返回当前日期对象描述的时间到1970年1月1日零点的毫秒值差
    * */
    var date = new Date();
    document.write(date+"<br>");
    document.write(date.toLocaleString()+"<br>");
    document.write(date.getTime()+"<br>")
</script>
</body>
</html>

Math

<script>
    /*
    * Math:数学对象
    *   1、创建:
    *       * 特点:Math对象不用创建,直接使用。Math.方法名
    *   2、方法:
    *       random():返回0~1之间的随机数 [0.1)
    *       ceil(x):向上舍入
    *       floor(x):向下舍入
    *       round(x):四舍五入
    *   3、属性:
    *       PI
    * */
    document.write(Math.PI+"<br>");
    document.write(Math.random()+"<br>");
    document.write(Math.round(3.14)+"<br>");//4
    document.write(Math.ceil(3.14)+"<br>");//4
    document.write(Math.floor(3.14)+"<br>");//3
    //取1~100随机整数
    document.write(Math.floor(Math.random()*100)+1);
</script>

Number

String

RegExp:正则表达式对象

  1、正则表达式:定义字符串的组成规则。

    1、单个字符:[ ]

      如:[a]  [ab] 表示a或b  [a~z] 表示a~z

        *  特殊符号代表特殊含义的单个字符:

          \d:单个数字字符  [0~9]

          \w:单个单词字符[a-zA-Z0-9_]

    2、量词符号:

      *:表示出现0次或多次

      ?:表示出现0次或1次

      +:表示出现一次或多次

      {m,n}:表示  m<=数量<=n

        * m如果缺省:{,n}:最多n次

        * n如果缺省:{m,}:最少m次

    3、开始结束符号:

      *  ^:开始

      *  $:结束

<script>
    /*正则对象:
    *   1、创建
    *       1、var reg = new RegExp("正则表达式");
    *       2、var reg = /正则表达式/;
    *   2、方法
    *       1、test(参数)方法;验证指定的字符串是否符合正则定义的规范
    * */
    var reg = new RegExp("^\\w{6,12}$");
    var reg2 = /^\w{6,12}$/;
    /*alert(reg);
    alert(reg2);*/
    var username = "zhangsan;
    var flag = reg2.test(username);//符合单词字符 8个
    alert(flag);
</script> 

Global

  1、特点:全局对象,这个Global中封装的方法不需要对象就可以直接调用。方法名();

  

<script>
    /*
    * Global对象:
    * 1、特点:全局对象
    * 2、方法:
    *       encodeURI():URL编码
    *       decodeURI():URL解码
    *
    *       encodeURIComponent():URL编码,编码的字符更多
    *       decodeURIComponent():URL解码
    *
    *       parseInt();将字符串转为数字
    *           * 逐一判断每一个字符是否是数字,直到不是数字为止,将前面数字部分转为number
    *
    *       isNaN();判断一个值是否为NaN
    *           *  NaN六亲不认,连自己都不认,NaN参与的==比较全部为false
    *
    *       eval();计算JS字符串,并且把它作为脚本代码来执行。
    * 3、URL编码:%E6%88%91%E7%88%B1%E4%B8%AD%E5%9B%BD
    *
    *
    * */
    var str = "http://www.baidu.com?wd=我爱中国";
    var encode = encodeURI(str);
    document.write(encode+"<br>");//http://www.baidu.com?wd=%E6%88%91%E7%88%B1%E4%B8%AD%E5%9B%BD
    let s = decodeURI(encode);
    document.write(s+"<br>");
    var str1 = "http://www.baidu.com?wd=我爱中国";
    var encode1 = encodeURIComponent(str1);
    document.write(encode1+"<br>");//http%3A%2F%2Fwww.baidu.com%3Fwd%3D%E6%88%91%E7%88%B1%E4%B8%AD%E5%9B%BD
    let s1 = decodeURIComponent(encode);
    document.write(s1+"<br>");

    var str = "a123str";
    document.write(parseInt(str)+"<br>");//NaN

    var a = NaN;
    document.write((a == NaN)+"<br>");
    document.write(isNaN(a)+"<br>");

    var jscode = "alert(123)";
    alert(jscode);//alert(123)
    alert(eval(jscode));//123
</script>

 

猜你喜欢

转载自www.cnblogs.com/21seu-ftj/p/12289611.html