js基础
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<!-- <script src="JScript1.js" type="text/javascript"></script>-->
<script type="text/javascript">
function ni() { // 弹出一个本地时间的对话框
alert(new Date().toLocaleDateString());
}
function add(li, l2) { //求和函数:调用add函数就可以得到参数1和参数2的和
return li + l2
}
//变量f1指向一个匿名函数。那么在调用f1的时候,f1就可以作为一个函数来使用了。(这就是委托)
var f1 = function (l1, l2) {
if (l1 > l2) {
return l1 + l2;
}
else {
return l2 - l1;
}
}
//创建一个person的函数(相当于C#中的类),里面有两个参数 这个函数可以动态的增加属性。动态的增加属性只要this.属性名就好了。
function person(name, age) {//声明一个函数,当成类来用
this.Name = name; //动态的增加一个Name属性
this.Age = age; //动态的增加一个Age属性
//这个sayHello其实就是一个对象,它指向一个匿名函数而已。相当于上面的那个f1委托
this.sayHello = function () {
alert("你好,我是" + this.Name + ";我" + this.Age + "岁了");
}
}
var s1 = new person("张三丰", 52); //不要忘记了这个new, 如果去掉这个new ,就变成直接调用person函数了。
s1.sayHello(); //输出 “你好,我是张三丰;我52岁了”
/*
var s2 = person("张三丰", 52); //不信我们就试试看:去掉这个new
alert(s2); //然后打印一下这个s2 ,输出undefined; 为什么会是输出undefined呢?那是因为person这个函数本身就没有返回值;js中并非所有路径都有返回值,如果没有返回值他就认为返回值是undefined
*/
//在这里了还可以为person类动态的增加属性(javascript没有类,只要函数,这里我们只是这样叫而已)
s1.Gender = "男"; //即便你new了一个s1对象 我还可以通过你new出来的这个s1对象来动态的增加属性;在这里我动态的增加一个Gender属性
alert(s1.Gender);
var arr = new Array() //声明一个arr的数组。javascript中的数组都是动态数组,相当于c#里的ArrayList
arr[0] = "tom";
arr[1] = "jeem";
for (var i = 0; i < arr.length; i++) {
alert(arr[i]);
}
</script>
</head>
<body>
<input type="button" onclick="ni()" value="获取当地时间" />
<a href="javascript:alert('你好')">你好</a> <a href="http://www.baidu.com" onclick="alert('你好')">
百度你好</a>
<input type="button" value="求和" onclick="alert(add(1,2)+3)" />
<input type="button" value="委托" onclick="alert(f1(5,9))" />
</body>
</html>
有一道面试题: var a=new Main(); a.Height=170; 请定义Man
答:
<script type="text/javascript">
//function Man(height, width) { //定义个Man函数,它里面有两个参数
// this.Height = height; //动态给它添加一个Height属性,并赋值
// this.Width = width; //动态给它添加一个Width属性,并赋值
//}
//var a = new Man(170, 120);
//alert(a.Height);
//alert(a.Width);
function Man() { //定义个Man函数
this.Height=0; //动态给它添加一个Height属性,并给它赋初始值,进行初始化。
}
var a = new Man();
a.Height=170
alert(a.Height); //输出170
</script>
基础与如何引用外部js文件
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>广东易通</title>
<script src="JScript1.js" type="text/javascript"></script><!--从外部引用js文件的方式:js内容全部写在外部文件里,这里使用引用-->
<script type="text/javascript">
var strTime = Date();
alert(strTime.toLocaleString());
//javascript是弱类型,声明类型的时候无法:int i=10;只能用var i=10;这种形式来声明变量【这个var与c#里面的var不一样,c#中的var是类型推断,而这里的var是一个动态的类型的。具体看下面两段代码】
var i = 10; //声明一个变量,变量名字为i,指向10这个整数,一旦它指向10,那么它就是int类型了
i = "abc"; //虽然它上面指向了一个int型。但是它同样还可以指向别的类型。这里它又指向了一个值为"abc"的字符串,所以它又变成string类型了
function person(name, age) { //声明一个函数,当成类来用
this.Name = name;
this.Age = age;
this.Sayhello = function () { alert(this.Name) }
}
// var p1 = person("tom",30);不要丢了new,否则就变成直接调用这个函数了
var p1 = new person("tom", 30);
p1.Sayhello();
</script>
</head>
<body>
</body>
</html>