《悟透JavaScript》之 甘露模型(新)
在上面的示例中,我们定义了两个语法甘露,一个是Class()函数,一个是New()函数。使用Class()甘露,我们已经可以用非常优雅的格式定义一个类。例如前例中的:
var
Employee
=
Class(Person,
//
派生至Person类
{
Create:
function
(name, age, salary)
{
Person.Create.call(
this
, name, age);
//
调用基类的构造函数
this
.salary
=
salary;
}
,
ShowMeTheMoney:
function
()
{
alert(
this
.name
+
"
$
"
+
this
.salary);
}
}
);
这种类的写法已经和C#或Java的格式非常相似了。不过,其中调用基类的构造函数还需要用“Person.Create.call(this,
name,
age)”这样的方式来表达。这需要用到基类的类名,并要用call这种特殊的方式来传递this指针。这和C#的base()以及Java的
super()那样的简介调用方式比起来,还需要进一步美化。
而New()函数的使用也不是很爽。前例中需要用“New(Employee, ["Steve Jobs", 53,
1234])”这样的方式来创建对象,其中第一个参数是类,其他构造参数需要用数组包起来。这和JavaScript本来那种自然的“new
Employee("Steve Jobs", 53, 1234)”比起来,丑陋多了。这也需要美化。
为了实现这些美化工作,我们需要回顾一下new一个对象的实质。前面我们说过:
var anObj = new aClass();
相当于先创建一个空白对象anObj,然后将
相关文档:
javascript, webservice, 天气预报
运行演示,请点击这里:>>天气预报 WebService JavaScript Web页面调用代码,转载及使用该代码,请保留作者信息,其它部分您可任意修改。
源代碼:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCT ......
a href="#"> 点击链接后,页面会向上滚到页首,# 默认锚点为 #TOP
<a href="javascript:void(0)" onClick="window.open()"> 点击链接后,页面不动,只打开链接
<a href="#" onclick="javascript:return false;"> 作用同上,不同浏览器会有差异。
点击链接后,不想使页面滚到页首,就用href="javascript:v ......
时间对象: Date()
使用前需要声明/创建对象, var currentTime = new Date();
常用方法:
getYear(); getMonth(); getDate(); getDay(); getHours(); getMinutes
(); getSeconds(); getTime();
setYear(); setMonth(); setDate(); setHours(); setMinutes();
......
javaScript 截取字符串
两种方法:
String.substr(N1,N2) 这个就是我们常用的从指定的位置(N1)截取指定长度(N2)的字符串;
String.substring(N1,N2) 这个就是我们常用的从指定的位置(N1)到指定的位置(N2)的字符串;
例如
对于http://localhost:8008index.aspx
substr(22,5)=substring(22,27)
Result:index
打印本页
......