转行学开发,代码100天——2018-03-21
JavaScript中的函数调用有4种方式:
方式一:直接通过函数名调用
在 HTML 中默认的全局对象是 HTML 页面本身,所以函数是属于 HTML 页面。
在浏览器中的页面对象是浏览器窗口(window 对象)。以上函数会自动变为 window 对象的函数。
//1.直接通过函数名调用
function add(a,b)
{
return a+b;
}
document.write("计算结果是:"+add(12,5));
函数作为全局对象调用,会使 this 的值成为全局对象。
使用 window 对象作为一个变量容易造成程序崩溃。
方式二:函数作为一个方法、属性调用
函数作为对象方法调用,会使得 this 的值成为对象本身。
//2.函数作为一个方法调用
var person=
{
name:"Allen",
age:"28",
gender:"Man",
fullInfo:function()
{
document.write("name"+this.name+",age:"+this.age+",gender:"+this.gender);
}
}
person.fullInfo();
方式三:通过构造函数调用
构造函数的调用会创建一个新的对象。新对象会继承构造函数的属性和方法。构造函数中 this 关键字没有任何的值。
this 的值在函数调用实例化对象(new object)时创建。
//3.构造函数调用
function myFunction(name,age)
{
this.name =name;
this.age =age;
}
var pp = new myFunction("Allen","28");
document.write("name:"+pp.name+",age:"+pp.age);
方式四:作为函数方法调用
//4.作为函数方法调用 var date = new Date(); // document.write(date); //document.write(date.getFullYear()); // date.setFullYear(2020,10,3); // document.write(date); function startTime() { // body... var date = new Date(); var h = date.getHours(); var m = date.getMinutes(); var s = date.getSeconds(); m = checkTime(m); s = checkTime(s); document.getElementById("timeTest").innerHTML = h+":"+m+":"+s; t = setTimeout(function() { startTime(); },1000); } function checkTime(i) { if (i<10) { i = "0"+i; } return i; } </script> <div id ="timeTest"></div>
实践出真知,多思考,多总结。