javascript实例教程(4) 探测浏览器插件

2016-01-29 11:29 5 1 收藏

javascript实例教程(4) 探测浏览器插件,&#106avascript实例教程(4) 探测浏览器插件

【 tulaoshi.com - Javascript 】

  你可能对于一些其它的编程语言很熟悉,比如C++或者Java等等,它们也是可以创建对象的,现在最新的VB版本VB.NET也具有了更好的面向对象功能-----创建对象。从本质上讲,创建对象的想法只是为了创建一个简单的实体,这个实体包含了许多属性和方法。以下是一个对象构造器的例子:

function Person(name, age, colour) {

this.name = name;

this.age = age;

this.colour = colour;

}

然后,我们可以这样来调用Person构造器:

var somebody = new Person("Patrick", 22, "red");

或者从用户那里得到输入数值:

var pName = prompt("What is your name?");

var pAge = prompt("How old are you this year?");

var pColour = prompt("What is your favourite colour?");

var somebody = new Person(pName, pAge, pColour);

所有在JavaScript中得构造器,就象在Java中,都可以利用new关键字来进行调用。当一个person利用它的属性{"Patrick", 22, "red"}被创建(或者说被构造)的时候,这些数值就可以访问了,比如 :

somebody.name, or

somebody["name"]

"Patrick"

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/javascript/)

somebody.age, or

somebody["age"]

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/javascript/)

22

somebody.colour, or

somebody["colour"]

"red"



因为我们利用name增加了Person的属性,所以它们必须通过name来被引用,这点在后面的代码中可以看到。如果我们使用数字,那么我们就必须使用数字来引用,比如要用somebody[0],而不用somebody.name。Javascript的数组和对象(比如 forms,images,frames,…)都允许这两种方法。

另外地,数组和对象都有一个本质的属性,即length(长度)。我们在编制程序的时候,可以这样来使用它:objectName.length,它返回对象包含的元素或者属性的个数。
属性同样也可以从函数中来创建,这样,你只需要增加一行到Person函数中就可以创建属性了: function Person(name, age, colour) {

this.name = name;

this.age = age;

this.colour = colour;

this.birthYear = (new Date()).getYear() - this.age;

}

以上的Person函数定义了第四个属性:birthYear,它代表每一个Person的出生年份。这里要注意,这一增加的行是调用一个内置的Date构造器,它返回一个包含了当前日期和时间的Date对象。

这是一个非常懒惰的方法来访问一个Date变量。所以使用下面的代码会显得更准确些,更有可读性:

var today = new Date();

this.birthYear = today.getYear() - this.age;

当然,有许多方法来对JavaScript程序进行“压缩”。通过插入对象到代码中,你就可以处理绝大多数的变量。

这个Date对象比起我们上面定义的Person对象来说更复杂,因为它包括了访问方法(accessor/get)以及操作方法(manipulator/set)。同时,增加简单的对象方法到JavaScript中是可能,下面是详细的例子代码:

<SCRIPT language="JavaScript"

<!-- Hide from older browsers


function Person(name, age, colour) {

this.name = name;

this.age = age;

this.colour = colour;

this.birthYear = (new Date()).getYear() - this.age;

this.toString = printPerson; // 这里定义the Person.toString() 方法

this.isOlder = isOlder; // 这里定义Person.isOlder(Person) 方法

}


function printPerson() {

var text = this.name + " was born in " + this.birthYear +"<br";

text += "and is " + this.age + " years old.<p";

return text;

}


function isOlder(otherPerson) { // 这里定义是否第一个人是更老的

return (this.age otherPerson.age); // 返回布尔型数值

}


//下面的代码用于测试我们的函数


var body1 = new Person("Patrick", 22, "red");

var body2 = new Person("Betty", 21, "green");


document.write(body1); //这里为Person.toString()创建一个调用

document.write(body2);


document.write(body1.name);

document.write((body1.isOlder(body2)) ? " is " : " is not "); // 是否更老?

document.write("older than " + body2.name);


//

来源:http://www.tulaoshi.com/n/20160129/1482501.html

延伸阅读
  利用Javascript产生鼠标移过时弹出窗口 本节教程将介绍当鼠标移过图片的时候弹出一个窗口的设计。这个弹出的窗口是一个标准的网页,你可以设置它的大小。 首先在网页的Header标签处加入以下代码: <SCRIPT LANGUAGE="Javascript" var popupwindow_window = null; function popupwindow(status,url) { if(status != 0) { if(po...
  HotMetal PRO 6.0是强大易用的网站编辑和发布工具。在本教程中我们在HotMetal中使用JavaScript。在HotMetal中,JavaScript支持是基于HotMetal为你提供了丰富的资源以及对象。它包含了几个新的对象,比如访问DOM的对象。另外,HotMetal支持一些ActiveX控件。这些控件以及Windows脚本支持使得HotMetal成为了JavaScript设计人员一个不可多...
  使用JavaScript中的OLE Automation 2. 什么是绑定 在你适用一个对象模型的属性、方法和事件之前,你必需首先创建一个计划性的引用给包含了你想适用的属性、方法或者事件的类。你可以通过声明一个局部对象变量以保留一个引用给这个对象来实现这个目的。然后,你要为局部变量指定一个对象的应用。 VB和VBScript使用CreateObject()函数...
  使用JavaScript中的OLE Automation 3. 怎样创建Automation对象的新实例 Jscript(微软版本的JavaScript)是一个宽松类型的语言。换句话说,变量不是明显定义为指定的数据类型。你不能声明一个变量为指定的对象类型,所以早绑定不可能在JScript中。Jscript的ActiveXObject()构造函数通常用于为对象创建一个迟绑定界面: var wdApp; //...
  HoTMetal中使用Javascript 6.怎样编写一个保存模块脚本 在本节教程的例子中,我们创建了一个新的保存模块文件对话框。HoTMetaL里面有几个模板你可以从中进行选择。模板只是一个普通的网页,这个网页被保存HoTMetaL应用程序目录的Template模板中。当你从文件菜单中选择新项目的时候,其中一个标签选项是Page From Template。当你选择...

经验教程

282

收藏

46
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部