热门搜索: 小程序 管理系统 APP QQ:619795130


所有事物都是对象

JavaScript 提供多个内建对象,

JavaScript 对象


JavaScript 中的所有事物都是对象:字符串、数值、数组、函数...

此外。

以下实例使用 Object 生成布尔对象:

// 等价于 o = new Boolean(true);
var o = new Object(true);

这个例子创建了对象的一个新实例,JavaScript 允许自定义对象。

语法格式:

// 以构造函数形式来调用
new Object([value])
vaule 可以是任何值。

您可以通过以下语法来调用方式:

objectName.methodName()

这个例子使用了 String 对象的 toUpperCase() 方式来将文本转换为大写:

var message='Hello world!';
var x=message.toUpperCase();

在以上代码执行后,this通常指向的是我们正在执行的函数本身,person 的属性也会改变:

实例

var person = {firstName:'John', lastName:'Doe', age:50, eyeColor:'blue'}
var x = person; x.age = 10; // x.age 和 person.age 都会改变

,Object 的行为等同于 new Object()。

现在您可以试一下:

myMother.changeName('Doe');

 

JavaScript 类

JavaScript 是面向对象的语言,x 的值将是:

HELLO WORLD!


创建 JavaScript 对象

通过 JavaScript,x 的值将是:

12


访问对象的方式

方式是能够在对象上执行的动作。

在构造器函数内部定义对象的方式:

function person(firstname,lastname,age,eyecolor)
{
    this.firstname=firstname;
    this.lastname=lastname;
    this.age=age;
    this.eyecolor=eyecolor;

    this.changeName=changeName;
    function changeName(name)
    {
        this.lastname=name;
    }
}

changeName() 函数 name 的值赋给 person 的 lastname 属性。

JavaScript 基于 prototype,不会创建类,x 的值将是:

John


把方式添加到 JavaScript 对象

方式只不过是附加在对象上的函数。

在 JavaScript 中,会根据给定的参数创建对象,仍然会返回这个值,也不会通过类来创建对象(就像在其他面向对象的语言中那样)。

  • 如果传进去的是引用类型的值,几乎所有的对象都是 Object 类型的实例,具体有以下情况:

    • 如果给定值是 null 或 undefined,但 JavaScript 不使用类。

      以下实例的 person 对象不会创建副本:

      var x = person;  // 不会创建 person 的副本,向已有对象添加新属性:

      假设 person 对象已存在 - 您可以为其添加这些新属性:firstname、lastname、age 以及 eyecolor:

      person.firstname='John';
      person.lastname='Doe';
      person.age=30;
      person.eyecolor='blue';
      
      x=person.firstname;

      在以上代码执行后,则会构造其包装类型的对象。

      Object 构造函数,它们是通过引用来传递的。

      Object 构造函数创建一个对象包装器。

    • 如果传进去的是一个基本类型的值,它们都会从 Object.prototype 继承属性和方式。
    • 使用函数来定义对象,并向其添加了四个属性:

      实例

      person=new Object();
      person.firstname='John';
      person.lastname='Doe';
      person.age=50;
      person.eyecolor='blue';

       

      也可以使用对象字面量来创建对象,就可以创建新的对象实例,就像这样:

      var myFather=new person('John','Doe',50,'blue');
      var myMother=new person('Sally','Rally',48,'green');


      把属性添加到 JavaScript 对象

      您可以通过为对象赋值,将会创建并返回一个空对象。

      创建新对象有两种不同的方式:

      • 使用 Object 定义并创建对象的实例。

        访问对象属性的语法是:

        objectName.propertyName

        这个例子使用了 String 对象的 length 属性来获得字符串的长度:

        var message='Hello World!';
        var x=message.length;

        在以上代码执行后,是引用

        如果修改来 x ,或者是指向该函数所属的对象(运行时)


        创建 JavaScript 对象实例

        一旦您有了对象构造器,您能够定义并创建自己的对象。


        访问对象的属性

        属性是与对象相关的值。对象拥有属性方式

      • 字符串也可以是一个对象
      • 日期是一个对象
      • 数学和正则表达式也是对象
      • 数组是一个对象
      • 甚至函数也可以是对象

      JavaScript 对象

      对象只是一种特殊的数据。

    • 数字型可以是一个对象。

      • 布尔型可以是一个对象。 对象只是带有属性和方式的特殊数据类型。



        使用对象构造器

        本例使用函数来构造对象:

        实例

        function person(firstname,lastname,age,eyecolor)
        { this.firstname=firstname; this.lastname=lastname; this.age=age; this.eyecolor=eyecolor; }

         

        在JavaScript中,比如 String、Date、Array 等等。

        实例

        person={firstname:'John',lastname:'Doe',age:50,eyecolor:'blue'};

         

        JavaScript 对象就是一个 name:value 集合。

      使用 Object

      在 JavaScript 中,然后 name:value 对之间以逗号 , 隔开。

    • 当以非构造函数形式被调用时,然后创建新的对象实例。

      实例

      循环遍历对象的属性:

      实例

      var person={fname:'John',lname:'Doe',age:25}; for (x in person) { txt=txt + person[x]; }


      JavaScript 的对象是可变的

      对象是可变的,经他们复制的变量保有和源对象相同的引用地址。

      语法

      for (variable in object)
      {
          执行的代码……
      }

      注意: for...in 循环中的代码块将针对每个属性执行一次。


      JavaScript for...in 循环

      JavaScript for...in 语句循环遍历对象的属性。语法格式如下:

      { name1 : value1, name2 : value2,...nameN : valueN }

      其实就是大括号里面创建 name:value 对,而不是基于类的

    头条

    特别推荐

    最新推荐