Danh mục

Một vài thủ thuật Javascript - part 5

Số trang: 10      Loại file: pdf      Dung lượng: 1.95 MB      Lượt xem: 14      Lượt tải: 0    
tailieu_vip

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Biến toàn cục và biến cục bộVấn đề của hai loại biến toàn cục và cục bộ mình đã trình bày ngay từ đầu! Nhưng chỉ giải thích sơ qua là khác nau ở cái tên và không đi sâu thêm, bởi muốn hiểu vấn đề này, chúng ta cần phải đi qua phần hàm - function để có thể hiểu rỏ nhất. Nhắc lại chút: Biến cục bộ( ngay từ từ cục bộ củng cho biết nó chỉ hoạt động ở một bộ phận nhất định) Biến cục bộ khi khai báo bắt đầu với từ kháo var Biến...
Nội dung trích xuất từ tài liệu:
Một vài thủ thuật Javascript - part 5 September 16, 2009 [JAVASCRIPT] Biến toàn cục và biến cục bộVấn đề của hai loại biến toàn cục và cục bộ mình đã trình bày ngay từ đầu! Nhưng chỉ giải thích sơ qua là khácnau ở cái tên và không đi sâu thêm, bởi muốn hiểu vấn đề này, chúng ta cần phải đi qua phần hàm - functionđể có thể hiểu rỏ nhất.Nhắc lại chút:Biến cục bộ( ngay từ từ cục bộ củng cho biết nó chỉ hoạt động ở một bộ phận nhất định)Biến cục bộ khi khai báo bắt đầu với từ kháo varBiến toàn cục đương nhiên khác với biến toàn cục ở chỗ nó có giá trị ở toạn bộ phận.Biến toàn cục khi khai báo không có từ khoá var.Trong các ví dụ ít khi nào mình dùng tới từ khoá var, bởi vì đơn giản mình muốn các ví dụ đơn giản nhất có thể, dĩnhiên, các ví dụ đó cũng không hề bị ảnh hưởng bởi việc dùng loại biến nào.Xét lại ví dụ của loạt bài mảng nói về công dụng : Tính tổng số tiền thu được trong tuần, tính và in ra màn hình sốngày có thu nhập cao hơn trung bình.Đoạn code của chúng ta đây:Code://Khai báo mang là phần tử mảngmang=Array();//Số ngày yêu cầu, giả sử là 30songay=5;//biến tổng lưu giữ giá trị tong so tien thu đuoctong=0;//biến tb lưu giữ giá trị trung bìnhtb=0;HocVui.Net Page 32 September 16, 2009 [JAVASCRIPT]//biến num lưu gữ số ngày có thu nhập cao hơnnum=0;//bắt đầu vòng lặpfor(i=0;i September 16, 2009 [JAVASCRIPT]bây giờ bạn hãy bắt đầu gọi hàm này ở bất cứ đâu trên trang web. Nhưng hãy thêm một số dòng bên dưới như mìnhđây:Code:// Ở đây mình gọi hàm để tính toán trong 9 ngàytinhtoan(9);// Đưa ra số ngày đã tính toánalert(Số ngày tính toán: +num);// thông báo riêng tổng thu nhậpalert(tổng thu nhập: +tong);// và mức thu nhận trung bìnhalert(thu nhập trung bình: +tb);Sau khi bạn nhập đầy đủ thông tin, cả thảy sẽ có 4 hộp thông báo, 1 vốn dĩ của hàm, 1 Đưa ra số ngày đã tính toán, 1thông báo riêng tổng thu nhập, 1 mức thu nhận trung bình.Nhưng mọi vệc thường hay chuyễn hướng với từ nhưng.....Ta thay đổi một số dòng ở các đoạn khai báo function, cụ thể là thêm từ kháo var vào trước dòng khai báo hai biến,tong và tbCode://Khai báo mang là phần tử mảngmang=Array();//Số ngày yêu cầu, giả sử là 30songay=numngay;//biến tổng lưu giữ giá trị tong so tien thu đuocvar tong=0;//biến tb lưu giữ giá trị trung bìnhvar tb=0;//biến num lưu gữ số ngày có thu nhập cao hơnnum=0;rồi hãy gọi hàm và thêm một số dòng như trường hợp trên, mọi thứ sẽ không như bình thường nữa. Đầu tên là một hộpthông báo của hàm, thứ hai là hộp thông báo Đưa ra số ngày đã tính toán, còn hai hộp thông báo kia sẽ vắn bóngĐơn giãn vì khi khai báo từ kháo var trước hai biến tong và tb, lúc này chúng trở thành hai biến cục bộ, và như đã nó,biến cục bộ chỉ có gái trị trong một bộ phận(cụ thể trường hợp này chính là hàm tintoan), khi ta gọi hai biến này ngoàicấu trúc hàm, javascript sẽ cho rằng những hàm này chưa tồn tại, chưa được khai báo( vốn dĩ ta đã khai báo tronghàm) và lỗi sẽ sảy ra khiến hai hợp thoại không thể xuất hiện.Lại nhấn mạnh một lần nữa, tuỳ theo mục đích của trương trình, chính lập trình viên sẽ quyết định xem dùng những gìcho thích hợp nhất với chương trình. Và đó là một yếu tố không thể thiếu, yếu tố con người! javascript - function returnBạn có nhớ những hàm tính toán không, giống như Math.sqrt() nên trong bài Một số hàm hay dùng trongJavaScriptHocVui.Net Page 34 September 16, 2009 [JAVASCRIPT]Bản thân các hàm này mang luôn một giá trị. Có nghĩa là ta có thể lấy ngay:5 + Math.sqrt(4) //bằng mấy nhỉCác hàm từ trước tới giờ ta viết chỉ mới thực hiện hành động mà ta muốn, chứ chưa hề mang giá trị nào. Để có thể gáncho hàm một giá trị ta dùng lệnh return.Xét hàm đơn giản tính tồng và đưa ra màn hình hai số.Code:function tinhtong(a,b){ alert(a+b)}function tinhtong(a,b){ alert(a+b)}XemDùng return cho hàm này:Code:function tinhtong(a,b){ var kq=a+b; return kq;}Lúc này nếu bạn gọi hàm này một cách bình thường thì sẽ chả có gì sảy ra, nhưng hãy thử:Code:alert(tinhtong(2,3));Hoặc:Code:alert(tinhtong(2,3)+tinhtong(3,7));Bạn sẽ thấy lúc này của hàm đã được gán giá trị. Ngoài ra ta cũng có thể gán cho nó những giá trị boolean, và dùnghàm làm điều kiện.Xét đoạn code so sánh ba số người dùng nhập vào, nếu cả ba số bằng nhau thì thông báo Đúng ngược lại Sai.Đầu tiên sẽ là đoạn không dùng tới funtionCode:a=prompt(Số a,);b=prompt(Số b,);HocVui.Net Page 35 September 16, 2009 [JAVASCRIPT]c=prompt(Số c,);if((a= ...

Tài liệu được xem nhiều: