zoukankan      html  css  js  c++  java
  • js 对象

    对象
        JavaScript 的所有数据都可以被视为对象,而每个对象都有其 属性(properties)和 方法(methods)。
        
        创建对象

        /*
         * 使用new关键字调用的函数,是构造函数constructor
         *     构造函数是专门用来创建对象的函数
         * 使用typeof检查一个对象时,会返回object
         */

        /*
         * 在对象中保存的值称为属性
         * 向对象添加属性
         *     语法:对象.属性名 = 属性值;
         */

            killer = new Object(); //创建对象
            killer.name = "mysterious"; // 对象的名字
            killer.age = "18"; // 对象的年龄
            
            killer.study = function(){
                alert("学习");
            }
            killer.eat = function(){
                alert("吃饭");
            }

            或:

                var killer = {};
                killer.name = "Tom";

            
            再者:

            var killer = {
                name:"Tom";
                age:"19";
            }

          
            采用函数的方式新建对象:

                function killer(name,age) {
                    this.name = name;
                    this.age = age;
                    this.study = function() {
                        alert("studying");
                    };
                    this.eat = function() {
                        alert("eating");
                    }
                }


            然后通过 new 创建 killer 对象的实例:

                var killer1 = new killer('Tom','19');
                var killer2 = new killer('Jack','20');


        访问
            访问对象的属性或调用对象的方法,通过符号“.”。

        /*
         * 读取对象中的属性
         *     语法:对象.属性名
         *
         * 如果读取对象中没有的属性,不会报错而是会返回undefined
         */

                var x = killer1.name;
                var y = killer1.age;
                
                killer1.eat(); // 调用对象的方法

    /*
     * 如果要使用特殊的属性名,不能采用.的方式来操作
     *     需要使用另一种方式:
     *         语法:对象["属性名"] = 属性值
     *     读取时也需要采用这种方式
     *
     * 使用[]这种形式去操作属性,更加的灵活,
     *     在[]中可以直接传递一个变量,这样变量值是多少就会读取那个属性
     *
     */

    obj["123"] = 789;
    obj["nihao"] = "你好";
    var n = "nihao";
    //console.log(obj["123"]);     

        /*
         * in 运算符
         *     - 通过该运算符可以检查一个对象中是否含有指定的属性
         *         如果有则返回true,没有则返回false
         *  - 语法:
         *         "属性名" in 对象
         */

        //console.log(obj.test2);
        
        //检查obj中是否含有test2属性
        //console.log("test2" in obj);
        //console.log("test" in obj);
        console.log("name" in obj);

        

    对象字面量

        /*
         * 使用对象字面量,可以在创建对象时,直接指定对象中的属性
         * 语法:{属性名:属性值,属性名:属性值....}
         *     对象字面量的属性名可以加引号也可以不加,建议不加,
         *     如果要使用一些特殊的名字,则必须加引号
         *
         * 属性名和属性值是一组一组的名值对结构,
         *     名和值之间使用:连接,多个名值对之间使用,隔开
         *     如果一个属性之后没有其他的属性了,就不要写,
         */

        var obj2 = {
            
            name:"猪八戒",
            age:13,
            gender:"男",
            test:{name:"沙僧"}
            
        };
        
        console.log(obj2.test);


    内置对象
        String 字符串对象
            String 的属性
            该对象只有一个属性,即 length,表示字符串中的字符个数,包括所有的空格和符号
            
        String 的方法
        String 对象共有 19 个内置方法,主要包括字符串在页面中的显示、字体大小、字体颜色、字符的搜索以及字符的大小写转换等功能,下面是一些常用的:
            charAt(n) :返回该字符串第 n 位的单个字符。(从 0 开始计数)
            charCodeAt(n) :返回该字符串第 n 位的单个字符的 ASCII 码。
            indexOf() :用法:string_1.indexOf(string_2,n); 从字符串 string_1 的第 n 位开始搜索,查找 string_2,返回查找到的位置,如果未找到,则返回 -1,其中 n 可以不填,默认从第 0 位开始查找。
            lastIndexOf() :跟 indexOf() 相似,不过是从后边开始找。
            split('分隔符') :将字符串按照指定的分隔符分离开,返回一个数组,例如:'1&2&345&678'.split('&');返回数组:1,2,345,678。
            substring(n,m) :返回原字符串从 n 位置到 m 位置的子串。
            substr(n,x) :返回原字符串从 n 位置开始,长度为 x 的子串。
            toLowerCase() :返回把原字符串所有大写字母都变成小写的字符串。
            toUpperCase() :返回把原字符串所有小写字母都变成大写的字符串。
            
        Math 对象
            “数学”对象,提供对数据的数学计算。

        Math 的几个属性,是数学上几个常用的值:
            E :返回常数 e (2.718281828...)。
            LN2 :返回 2 的自然对数 (ln 2)。
            LN10 :返回 10 的自然对数 (ln 10)。
            LOG2E :返回以 2 为底的 e 的对数 (log2e)。
            LOG10E :返回以 10 为底的 e 的对数 (log10e)。
            PI :返回π(3.1415926535...)。
            SQRT1_2 :返回 1/2 的平方根。
            SQRT2 :返回 2 的平方根。

        Math 的方法
        Math 的内置方法,是一些数学上常用的数学运算:
            abs(x) :返回 x 的绝对值。
            round(x) :返回 x 四舍五入后的值。
            sqrt(x) :返回 x 的平方根。
            ceil(x) :返回大于等于 x 的最小整数。
            floor(x) :返回小于等于 x 的最大整数。
            sin(x) :返回 x 的正弦。
            cos(x) :返回 x 的余弦。
            tan(x) :返回 x 的正切。
            acos(x) :返回 x 的反余弦值(余弦值等于 x 的角度),用弧度表示。
            asin(x) :返回 x 的反正弦值。
            atan(x) :返回 x 的反正切值。
            exp(x) :返回 e 的 x 次幂 (e^x)。
            pow(n, m) :返回 n 的 m 次幂 (nm)。
            log(x) :返回 x 的自然对数 (ln x)。
            max(a, b) :返回 a, b 中较大的数。
            min(a, b) :返回 a, b 中较小的数。
            random() :返回大于 0 小于 1 的一个随机数。
            
        Array 数组对象
            数组对象是对象的集合,里边的对象可以是不同类型的。数组的每一个成员对象都有一个“下标”,用来表示它在数组中的位置(从 0 开始计数)。
            数组下标表示方法是用方括号括起来,比如:
                myArray[2]="hello"
            注意:JavaScript只有一维数组,要使用多维数组,请用这种虚拟法:
                var myArray = new Array(new Array(), new Array(), new Array(), ...);
            其实这是一个一维数组,里边的每一个元素又是一个数组。调用这个“二维数组”的元素时:
                myArray[2][3] = ...;
        Array 的属性
            length :返回数组的长度,即数组里有多少个元素。它等于数组里最后一个元素的下标加一。
        因此,想添加一个元素,只需要:
            `` myArray[myArray.length] = ...;

            ####(2)Array 的方法
            - join("指定分隔符") :返回一个字符串,把数组元素串起来,元素间用指定分隔符隔开。
            - toString() :把数组转为字符串,并返回结果。
            - reverse() :使数组元素倒序。
            - slice(n,m) :返回子数组,从数组第 n 个元素到第 m 个元素。
            - sort(SortFunction) :按照指定的 SortFunction 将数组的元素排序。
            - concat(Array\_1,Array\_2) :用于连接两个或多个数组。

  • 相关阅读:
    Android无线测试之—UiAutomator UiSelector API介绍之四
    Android无线测试之—UiAutomator UiSelector API介绍之三
    Android无线测试之—UiAutomator UiSelector API介绍之二
    网页抓取- 3
    VC 6.0 LNK2005 错误 处理
    抓取网页(3)之部分工程文件
    网页抓取 (2)
    网页抓取总结(一)
    nyoj-291 互素数个数 欧拉函数
    nyoj-257 郁闷的C小加(一) 前缀表达式变后缀
  • 原文地址:https://www.cnblogs.com/mysterious-killer/p/10050355.html
Copyright © 2011-2022 走看看