源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

javascript 面向对象编程 万物皆对象

  • 时间:2020-01-06 03:30 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:javascript 面向对象编程 万物皆对象
javascript和java、C#等语言一样也具有面向对象的一些特征,但细比较的时候,会发现这些特征并不是真正的面向对象,很多地方都是利用对象本身来模拟面向对象,所以认为javascript不能算是面向对象编程语言,而是基于对象的语言。 在javascript中真的是万物皆对象,new出来的东西是对象,方法是对象,连类也都是对象。下面分别来看一下对象、方法和类的对象特征。 [b]1.拿内置的Date来看一下吧 [/b]
[u]复制代码[/u] 代码如下:
var time = new Date(); var timeString = time.getFullYear() + "-" + time.getMonth() + "-" + time.getDate() + " " + time.getHours() + ":" + time.getMinutes() + ":" + time.getSeconds(); document.write(timeString);
通过 time来操作其所引用的Date对象,可以方便的调用Date的对象所包含的一系列getXX()方法来获取年月日时分秒等信息。 可以再看一下String
[u]复制代码[/u] 代码如下:
var username = new String("hello world"); document.write(username.length);
变量username引用了new出来的字符串对象,通过username访问字符串对象的length属性。 [b]2.方法也是对象[/b]
[u]复制代码[/u] 代码如下:
function hello() { alert("hello"); }; var helloRef = hello; helloRef();
hello是一个方法,helloRef是一个引用了hello方法的变量,helloRef和hello一样都指向了相同的方法对象。也就意味着helloRef也可以执行,helloRef()。同理也可以写出以下代码。
[u]复制代码[/u] 代码如下:
var helloRef = function() { alert("hello"); }; helloRef();
function(){alert(“hello”)}是一个匿名方法,当然也是对象,用helloRef变量引用该方法对象后,可以通过helloRef来调用方法。 [b]3.那么类呢?[/b]当然类也是对象,在javascript中,不像C#或java那样有class关键字用来创建类,而是直接使用方法的关键字来创建类或者叫模拟类。
[u]复制代码[/u] 代码如下:
function Person(username, age) { this.Name = username; this.Age = age; this.Introduce = function() { alert("我叫" + this.Name + ",今年" + this.Age + "岁了。"); }; }; var person1 = new Person("张三", 20); person1.Introduce();
以上创建了一个Person类型,Person带有构造参数username和age,通过创建的Person对象可以调用Person所包含的方法Introduce。下面对代码做一些修改。
[u]复制代码[/u] 代码如下:
function Person(username, age) { this.Name = username; this.Age = age; this.Introduce = function() { alert("我叫" + this.Name + ",今年" + this.Age + "岁了。"); }; }; var PersonClass = Person; var person1 = new PersonClass("张三", 20); person1.Introduce();
重新声明新的变量PersonClass并引用Person类,PersonClass和Person都指向了原来的Person所引用的类,所以也可以用PersonClass来创建对象。 以上的几个例子可能不是很恰当,但也可以一窥javascript中万物皆对象。 下一节详细的谈一谈javascript中的对象。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部