Khoa Toan tin, §¹i c Qc gia Hµ Néi
Các hàm (Functions)
JavaScript cũg cho phép s dng các hàm. Mc dù kng nht thiết phi có,
song các hàm có th có mt hay nhiu tham s truyn vào và mt giá tr tr v.
Bi vì JavaScript là nn ng có nh định kiu thp nên không cn định nghĩa
kiu tham s và giá tr tr v ca hàm. Hàm có th là thuc nh ca mt đối
tưng, trong trưng hp này đưc xem như là phương thc ca đối tưng
đó.
Lnh function đưc s dng để to ra hàm trong JavaScript.
Cú pháp
function fnName([param1],[param2],...,[paramN])
{
//function statement
}
Ví d:
Ví d sau minh ho cách thc to ra và s dng hàm như là tnh viên ca mt
đối tượng. Hàm printStats đưc to ra là phương thc ca đối tượng person
<HTML> <HEAD>
<TITLE>Function Example </TITLE>
<SCRIPT LANGUAGE= "JavaScript">
nh 5.4: KÕt qu cña vÝ dô lÖnh with
Khoa Toan tin, §¹i c Qc gia Hµ Néi
function person(first_name, last_name, age, sex)
{
this.first_name=first_name;
this.last_name=last_name;
this.age=age;
this.sex=sex;
this.printStats=printStats;
}
function printStats() {
with (document) {
write (" Name :" + this.last_name + " " + this.first_name + "<BR>" );
write("Age :"+this.age+"<BR>");
write("Sex :"+this.sex+"<BR>");
}
}
person1= new person("Thuy", "Dau Bich", "23", "Female");
person2= new person("Chung", "Nguyen Bao", "24", "Male");
person3= new person("Binh", "Nguyen Nhat", "24", "Male");
person4= new person("Hoan", "Do Van", "23", "Male");
person1.printStats();
person2.printStats();
person3.printStats();
person4.printStats();
</SCRIPT>
</HEAD>
<BODY> </BODY>
</HTML>
Khoa Toan tin, §¹i c Qc gia Hµ Néi
Các hàm sn
JavaScript có mt s hàm có sn, gn trc tiếp vào chính ngôn ng và kng
nm trong mt đối tưng nào:
· eval
· parseInt
· parseFloat
3.1.9. eval
Hàm y đưc s dng để đánh giá các biu thc hay lnh. Biu thc, lnh hay
các đối tưng ca thucnh đu có th được đánh giá. Đặc bit hết sc hu ích
khi đánh giá các biu thc do người dùng đưa vào (ngược li có th đánh giá
trc tiếp).
Cú pháp:
returnval=eval (bt k biu thc hay lnh hp l trong Java)
1.1.1.1.1. H×nh 8: VÝ dô vÒ hµm
nh 5.5: KÕt qu viÖc sö ng hµm
Khoa Toan tin, §¹i c Qc gia Hµ Néi
Ví d:
<HTML>
<HEAD>
<TITLE>Eval Example </TITLE>
<SCRIPT LANGUAGE= "JavaScript">
var string=10+ Math.sqrt(64)”;
document.write(string+ =+ eval(string));
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
3.1.10. parseInt
Hàm này chuyn mt chui s thành s nguyên vi cơ s là tham s th hai
(tham s này không bt buc). Hàm này thường đưc s dng để chuyn các s
nguyên sang cơ s 10 và đm bo rng các d liu đưọc nhp dưi dng ký t
được chuyn thành s trước khi nh tn. Trong trường hp d liu vào không
H×nh 5.6 dô hµm Eval
Khoa Toan tin, §¹i c Qc gia Hµ Néi
hp l, hàm parseInt s đc và chuyn dng chui đến v trí nó tìm thy ký t
không phi là s. Ngoài ra hàm y còn ct du phy động.
Cú pháp
parseInt (string, [, radix])
Ví d:
<HTML>
<HEAD>
<TITLE> perseInt Exemple </TITLE>
<SCRIPT LANGUAGE= "JavaScript">
document.write("Converting 0xC hex to base-10: " + parseInt(0xC,10) +
"<BR>");
document.write("Converting 1100 binary to base-10: " + parseInt(1100,2)
+ "<BR>");
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
nh 5.7: Ví d parInt