Ngôn ngữ Javascript

60 608 11
Ngôn ngữ Javascript

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tài liệu về Ngôn ngữ Javascript.

NGÔN NGỮ JAVASCRIPTYêu cầu:  Nắm được các kiểu dữ liệu trong Javascript Nắm được các toán tử trong Javascript Quản lý các sự kiện Nắm được các đối tượng của Javascript : window, document Thực hành làm các ví dụ giải các bài toán với Javascript1. Giới thiệu về ngôn ngữ Javascript JavaScript là ngôn ngữ kịch bản dùng để tạo các client-side scripts và server-side scripts. JavaScript làm cho việc tạo các trang Web động và tương tác dễ dàng hơn JavaScript là một ngôn ngữ kịch bản được hãng Sun Microsystems và Netscape phát triển. JavaScript được phát triển từ Livescript. Của Netscape  Các ứng dụng client chạy trên một trình duyệt như Netscape Navigator hoặc Internet Explorer. JavaScript có thể tăng cường tính động và tính tương tác của các trang web.– Cung cấp sự tương tác người dùng– Thay đổi nội dung động– Xác nhận tính hợp lệ của dữ liệu2. Chèn JavaScript vào trang HTMLBạn có thể nhúng JavaScript vào một file HTML theo một trong các cách sau đây: Sử dụng thẻ SCRIPT:<script language="JavaScript"><!--JavaScript statements;//--></script> Sử dụng một file JavaScript ở ngoài <script language="JavaScript" src="filename.js"></script> Sử dụng các biểu thức JavaScript trong các giá trị thuộc tính của thẻ Sử dụng trong các trình điều khiển sự kiệnVí dụ: 1 <HTML> <HEAD> <SCRIPT LANGUAGE = "Javascript"> confirm ("Are you Sure?"); alert("OK"); document.write(" Thank You !"); </SCRIPT> </HEAD></HTML>3. Biến và phân loại biếnTên biến trong JavaScript phải bắt đầu bằng chữ hay dấu gạch dưới. Các chữ số không được sử dụng để mở đầu tên một biến nhưng có thể sử dụng sau ký tự đầu tiên.Phạm vi của biến có thể là một trong hai kiểu sau: • Biến toàn cục: Có thể được truy cập từ bất kỳ đâu trong ứng dụng.được khai báo như sau :x = 0;• Biến cục bộ: Chỉ được truy cập trong phạm vi chương trình mà nó khai báo. Biến cục bộ được khai báo trong một hàm với từ khoá var như sau:var x = 0;Biến toàn cục có thể sử dụng từ khoá var, tuy nhiên điều này không thực sự cần thiết.4. Các kiểu dữ liệu trong Javascript JavaScript có một tập các kiểu dữ liệu.– Số (number)– Giá trị logic (boolean)– Chuỗi (String)– Giá trị rỗng Null Trong JavaScript, hai biến khác kiểu có thể kết hợp với nhau. ví dụ: A = “ Day la mot so .” + 5 sẽ có kết quả là một chuỗi với giá trị là "Day la mot so . 5" <HTML> <HEAD> <SCRIPT LANGUAGE = "Javascript"> var A = "12" + 7.5; document.write(A); </SCRIPT> </HEAD></HTML>2 Các kiểu dữ liệu nguyên thủy Integer – là các hệ thống số thập phân, thập lục phân và nhị phân. Floating- point(số thực) – Các số thập phân có phần thập phân sử dụng “e” or “”E”và theo sau là các số nguyên. String – là một chuỗi rỗng hay chuỗi ký tự được đặt trong cặp ngoặc đơn hoặc ngoặc kép Boolean–Kiểu này có hai giá trị: True or False.  null - Kiểu null chỉ có một giá trị: null. Null hàm ý không có dữ liệu.5. Các toán tử (operator)Toán tử được sử dụng để thực hiện một phép toán nào đó trên dữ liệu. Một toán tử có thể trả lại một giá trị kiểu số, kiểu chuỗi hay kiểu logic. Các toán tử trong JavaScript có thể được nhóm thành các loại sau đây: gán, so sánh, số học, chuỗi, logic và logic bitwise.a) Phép gánToán tử gán là dấu bằng (=) nhằm thực hiện việc gán giá trị của toán hạng bên phải cho toán hạng bên trái. Bên cạnh đó JavaScript còn hỗ trợ một số kiểu toán tử gán rút gọn.Kiểu gán thông thường Kiểu gán rút gọnx = x + y x + = yx = x - y x - = yx = x * y x * = yx = x / y x / = yx = x % y x % = yb) Các phép toán số họcCộng (+), trừ (-), nhân (*), chia (/) var1% var2 Toán tử phần dư, trả lại phần dư khi chia var1 cho var2- Toán tử phủ định, có giá trị phủ định toán hạngvar++ Toán tử này tăng var lên 1 (có thể biểu diễn là ++var)var-- Toán tử này giảm var đi 1 (có thể biểu diễn là --var)3 c) Các phép so sánh= = (bằng); != (khác); > ; >= ; < ; <=d) Phép toán xử lý chuỗiKhi được sử dụng với chuỗi, toán tử + được coi là kết hợp hai chuỗi, ví dụ:"abc" + "xyz" được "abcxyz"e) Các phép toán logicJavaScript hỗ trợ các toán tử logic sau đây: && (AND) ; || (OR); ! (NOT)f) Phép bitwiseVới các toán tử thao tác trên bit, đầu tiên giá trị được chuyển dưới dạng số nguyên 32 bit, sau đó lần lượt thực hiện các phép toán trên từng bit.& Toán tử bitwise AND, trả lại giá trị 1 nếu cả hai bit cùng là 1.| Toán tử bitwise OR, trả lại giá trị 1 nếu một trong hai bit là 1.^ Toán tử bitwise XOR, trả lại giá trị 1 nếu hai bit có giá trị khác nhauNgoài ra còn có một số toán tử dịch chuyển bitwise. Giá trị được chuyển thành số nguyên 32 bit trước khi dịch chuyển. Sau khi dịch chuyển, giá trị lại được chuyển thành kiểu của toán hạng bên trái. Sau đây là các toán tử dịch chuyển:<< Toán tử dịch trái. Dịch chuyển toán hạng trái sang trái một số lượng bit bằng toán hạng phải. Các bit bị chuyển sang trái bị mất và 0 thay vào phía bên phải. Ví dụ: 4<<2 trở thành 16 (số nhị phân 100 trở thành số nhị phân 10000)>> Toán tử dịch phải. Dịch chuyển toán hạng trái sang phải một số lượng bit bằng toán hạng phải. Các bit bị chuyển sang phải bị mất và dấu của toán hạng bên trái được giữ nguyên. Ví dụ: 16>>2 trở thành 4 (số nhị phân 10000 trở thành số nhị phân 100)>>> Toán tử dịch phải có chèn 0. Dịch chuyển toán hạng trái sang phải một số lượng bit bằng toán hạng phải. Bit dấu được dịch chuyển từ trái (giống >>). Những bit được dịch sang phải bị xoá đi. Ví dụ: -8>>>2 trở thành 1073741822 (bởi các bit dấu đã trở thành một phần của số). Tất nhiên với số dương kết quả của toán tử >> và >>> là giống nhau.Có một số toán tử dịch chuyển bitwise rút gọn:Kiểu bitwise thông Kiểu bitwise rút gọn4 thườngx = x << y x << = yx = x >> y x - >> yx = x >>> y x >>> = yx = x & y x & = yx = x ^ y x ^ = yx = x | y x | = y<HTML> <HEAD> <SCRIPT LANGUAGE="JavaScript"> var x = 10; var y = 5; alert ("The value of x is " + x + "The value of y is " + y); alert("x AND y = " + (x && y)); alert("x OR y = " + (x || y)); alert("NOT x = " + (!x)); </SCRIPT> </HEAD></HTML>6. Các lệnh có cấu trúca) Rẽ nhánh theo điều kiện với if . elseCú pháp if . else dùng trong trường hợp muốn rẽ nhánh theo điều kiện. Cú pháp này tương đương với nếu x thì làm y, còn nếu không thì làm z. Các câu lệnh if . else có thể lồng trong nhau.Cú pháp:<script language="JavaScript"> if (biểu_thức_1) { khối lệnh được thực hiện nếu biểu thức 1 đúng; } else if (biểu_thức_2) { khối lệnh được thực hiện nếu biểu thức 2 đúng; } else {5 khối lệnh được thực hiện nếu cả hai biểu thức trên đều không đúng; }</script>Ví dụ:<script language="JavaScript"> var x = prompt("Nhập vào giá trị của x:"); x = parseFloat(x); if (!isNaN(x)) { if (x > 0) { alert("x > 0"); } else if (x == 0) { alert("x = 0"); } else { alert("x < 0"); } } else { alert("giá trị bạn nhập không phải là một số"); }</script>b) Toán tử điều kiệnToán từ điều kiện còn được biết đến với tên gọi toán tử tam phân. Cú pháp của toán tử này như sau:<script language="JavaScript"> điều_kiện ? biểu_thức_đúng : biểu_thức_sai;</script>Toán tử này sẽ trả lại giá trị là kết quả của biểu_thức_đúng nếu điều_kiện có giá trị bool bằng true, ngược lại nó sẽ trả lại giá trị bằng biểu_thức_sai.6 Ví dụ:<html><head><head><body><script language="javascript"> var a=9; var b=5;a>b?document.write(a):document.write(b);</script><BODY></html>c) Lệnh switchCú pháp switch cũng là cú pháp điều kiện như if . else hay toán tử tam phân. Tuy nhiên, cú pháp switch thường được dùng khi chỉ cần so sánh bằng với số lượng kết quả cần kiểm tra lớn. Cách sử dụng cú pháp switch:<script language="JavaScript"> switch (biểu_thức_điều_kiện) { case kết_quả_1: khối lệnh cần thực hiện nếu biểu_thức_điều_kiện bằng kết_quả_1; break; case kết_quả_2: khối lệnh cần thực hiện néu biểu_thức_điều_kiện bằng kết_quả_2; break; default: khối lệnh cần thực hiện nếu biểu_thức_điều_kiện cho ra một kết quả khác; }</script>Sau mỗi khối lệnh trong một mục kiểm tra kết quả (trừ mục default), lập trình viên cần phải thêm vào break.Ví dụ: <html><head></head><body>Thử một chút<hr>7 <script language="JavaScript">a=prompt("Nhap a");a=parseFloat(a);switch (a){case 1:document.write("a=1");brack;case 2:document.write("a=2");brack;default:document.write("a>2");}</script></body></html>d) Vòng lặp whileVòng lặp while có mục đích lặp đi lặp lại một khối lệnh nhất định cho đến khi biểu thức điều kiện trả về false. Khi dùng vòng lặp while phải chú ý tạo lối thoát cho vòng lặp (làm cho biểu thức điều kiện có giá trị false), nếu không đoạn mã nguồn sẽ rơi vào vòng lặp vô hạn, là một lỗi lập trình. Vòng lặp while thường được dùng khi lập trình viên không biết chính xác cần lặp bao nhiêu lần. Cú pháp của vòng lặp while như sau:<script language="JavaScript"> while (biểu_thức_điều_kiện) { khối lệnh cần thực hiện nếu biểu_thức_điều_kiện trả về true; }</script>e) Vòng lặp do . whileVề cơ bản, vòng lặp do . while gần như giống hệt như vòng lặp while. Tuy nhiên, trong trường hợp biểu thức điều kiện trả về false ngay từ đầu, khối lệnh trong vòng lặp while sẽ không bao giờ được thực hiện, trong khi đó, vòng lặp do . while luôn đảm bảo khối lệnh trong vòng lặp được thực hiện ít nhất một lần. Ví dụ:<script language="JavaScript"> while (0 > 1) { alert("while"); // Câu lệnh này sẽ không bao giờ được thực hiện8 } do { alert("do . while"); // Bạn sẽ nhận được thông báo do . while một lần duy nhất } while (0 > 1);</script>Cú pháp của vòng lặp do . while như sau:<script language="JavaScript"> do { khối lệnh; } while (biểu_thức_điều_kiện);</script> f. Vòng lặp forVòng lặp for thường được sử dụng khi cần lặp một khối lệnh mà lập trình viên biết trước sẽ cần lặp bao nhiêu lần. Cú pháp của vòng lặp for như sau:<script language="JavaScript"> for (biểu_thức_khởi_tạo; biểu_thức_điều_kiện; biểu_thức_thay_đổi_giá_trị) { Khối lệnh cần lặp; }</script>Khi bắt đầu vòng lặp for, lập trình viên cần khởi tạo một biến nhất định bằng biểu_thức_khởi_tạo để dùng trong biểu_thức_điều_kiện, nếu biểu_thức_điều_kiện trả về true, khối lệnh cần lặp sẽ được thực hiện, sau khi thực hiện xong khối lệnh cần lặp, biểu_thức_thay_đổi_giá_trị sẽ được thực hiện, tiếp theo, biểu_thức_điều_kiện sẽ lại được kiểm tra, cứ như vậy cho đến khi biểu_thức_điều_kiện trả về false, khi đó vòng lặp sẽ kết thúc.Ví dụ:<HTML> <HEAD><TITLE>For loop Example </TITLE><SCRIPT LANGUAGE= "JavaScript">for (x=1; x<=10 ; x++) {y=x*25;document.write("x ="+ x +";y= "+ y + "<BR>");}9 </SCRIPT></HEAD><BODY></BODY></HTML>g. Vòng lặp for . inVòng lặp for . in dùng để lặp qua tất cả các thuộc tính của một đối tượng (hay lặp qua tất cả các phần tử của một mảng). Cú pháp của vòng lặp này như sau:<script language="JavaScript"> for (biến in đối_tượng) { khối lệnh cần thực hiện, có thể sử dụng đối_tượng[biến] để truy cập từng thuộc tính (phần tử) của đối tượng; }</script>Ví dụ:<HTML><HEAD><TITLE>For in Example </TITLE><SCRIPT LANGUAGE= "JavaScript">document.write("The properties of the Window object are: <BR>"); for (var x in window)document.write(" "+ x + ", ");</SCRIPT></HEAD><BODY> </BODY></HTML>i. NEWBiến new được thực hiện để tạo ra một thể hiện mới của một đối tượngCú phápobjectvar=new object_type ( param1 [,param2] . [,paramN])Ví dụ sau tạo đối tượng person có các thuộc tính firstname, lastname, age, sex. Chú ý rằng từ khoá this được sử dụng để chỉ đối tượng trong hàm person. Sau đó ba thể hiện của đối tượng person được tạo ra bằng lệnh newVí dụ:10 [...]... Ví dụ sau gọi hàm CheckAge() mỗi khi giá trị của trường văn bản thay đổi: Đoạn mã của chương trình xử lý sự kiện không là một hàm; nó là các lệnh của JavaScript cách nhau bằng dấu chấm phẩy Tuy nhiên cho mục đích viết thành các module nên viết dưới dạng các hàm Một số chương trình xử lý sự kiện trong JavaScript: ... Van", "23", "Male"); person1.printStats(); person2.printStats(); person3.printStats(); person4.printStats(); 13 8 CÁC HÀM CÓ SẴN JavaScript có một số hàm có sẵn, gắn trực tiếp vào chính ngôn ngữ và không nằm trong một đối tượng nào: • eval • parseInt • parseFloat a EVAL Hàm này được sử dụng để đánh giá các biểu thức hay lệnh Biểu thức, lệnh hay các đối tượng... 19 BÀI TẬP CÂU HỎI 1 Viết một đoạn lệnh JavaScript sử dụng cách thức confirm() và câu lệnh if then để thực hiện: Hỏi người sử dụng có muốn nhận được một lời chào không Nếu có thì hiện ảnh wellcome.jpg và một lời chào Nếu không thì viết ra một lời thông báo 2 Viết một đoạn lệnh JavaScript để thực hiện: • Hỏi người sử dụng: "10+10 bằng bao nhiêu?" • Nếu đúng thì... var conf=confirm("Click OK to see a wellcome message!") if (conf){ document.write(""); document.write("Wellcome you come to CSE's class"); } else document.write("What a pity! You have just click Cancel button"); 21 2 Thực hiện hỏi người sử dụng: Exercise 3.3 ... tượng document With Example with (document){ write(“This is an exemple of the things that can be done ”); write(“With the with statment ”); write(“This can really save some typing”); } 7 CÁC HÀM (FUNCTIONS) JavaScript cũg cho phép sử dụng các hàm Mặc dù không nhất thiết phải có, song... parseFloat("137abc") + ""); document.write("abc137= " + parseFloat("abc137") + ""); document.write("1abc37= " + parseFloat("1abc37") + ""); 9 MẢNG (ARRAY) Mặc dù JavaScript không hỗ trợ cấu trúc dữ liệu mảng nhưng Netscape tạo ra phương thức cho phép bạn tự tạo ra các hàm khởi tạo mảng như sau: function InitArray(NumElements){ 15 this.length = numElements; for... hoạ cách thức tạo ra và sử dụng hàm như là thành viên của một đối tượng Hàm printStats được tạo ra là phương thức của đối tượng person Function Example 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 . của Javascript : window, document Thực hành làm các ví dụ giải các bài toán với Javascript1 . Giới thiệu về ngôn ngữ Javascript JavaScript là ngôn ngữ. NGÔN NGỮ JAVASCRIPTYêu cầu:  Nắm được các kiểu dữ liệu trong Javascript Nắm được các toán tử trong Javascript Quản lý các sự

Ngày đăng: 08/11/2012, 15:28

Hình ảnh liên quan

Hình 11.1: Sơ đồ 1- Phân cấp đối tượng Navigator - Ngôn ngữ Javascript

Hình 11.1.

Sơ đồ 1- Phân cấp đối tượng Navigator Xem tại trang 25 của tài liệu.
TABLE thẻ HTML Hộp thẻ cho các bảng HTML - Ngôn ngữ Javascript

th.

ẻ HTML Hộp thẻ cho các bảng HTML Xem tại trang 53 của tài liệu.
21.10. BẢNG TỔNG KẾT CÁC TỪ KHÓA - Ngôn ngữ Javascript

21.10..

BẢNG TỔNG KẾT CÁC TỪ KHÓA Xem tại trang 60 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan