Bài giảng Phát triển ứng dụng Web. Web Programming - Chương 6: Javascript

Tổng quan

• Là ngôn ngữ Client-side script hoạt động

trên trình duyệt của người dùng (client).

• Chia sẻ xử lý trong ứng dụng web. Giảm

các xử lý không cần thiết trên server.

• Giúp tạo các hiệu ứng, tương tác cho

trang web.

Nhúng Javascript vào trang web

Định nghĩa script trực tiếp trong trang html:

Nhúng sử dụng script cài đặt từ 1 file .js khác:

pdf 61 trang kimcuc 10500
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Phát triển ứng dụng Web. Web Programming - Chương 6: Javascript", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Phát triển ứng dụng Web. Web Programming - Chương 6: Javascript

Bài giảng Phát triển ứng dụng Web. Web Programming - Chương 6: Javascript
1Javascript
Luong Tran Hy Hien
2Nội dung
1. Tổng quan
2. Một ví dụ
3. Ngôn ngữ JavaScript
4. Một số hàm khác
1. Tổng quan
• Là ngôn ngữ Client-side script hoạt động 
trên trình duyệt của người dùng (client).
• Chia sẻ xử lý trong ứng dụng web. Giảm 
các xử lý không cần thiết trên server.
• Giúp tạo các hiệu ứng, tương tác cho 
trang web.
3
Nhúng Javascript vào trang web
Định nghĩa script trực tiếp trong trang html:
<!--
// Lệnh Javascript
-->
Nhúng sử dụng script cài đặt từ 1 file .js khác:
Nhúng Javascript vào trang web
some statements
some statements
method()
// gọi thực hiện các phương thức được định nghĩa
// trong “Tên_file_script.js”
some javascript statements
Nhúng Javascript vào trang web
• Đặt giữa tag và : đoạn
script sẽ thực thi ngay khi trang web được
mở.
• Đặt giữa tag và : Đoạn
script trong phần body được thực thi khi
trang web đang mở (sau khi thực thi các
đoạn script có trong phần ).
• Số lượng đoạn script là không hạn chế.
6
72. Một ví dụ
Sử dụng JavaScript
document.write(“Hello world!”);
document.write(“Hello world!”);
83. NGÔN NGỮ JAVASCRIPT
3.1 Giới thiệu
3.2 Cú pháp và quy ước
3.3 Kiểu dữ liệu
3.4 Khai báo biến, phạm vi biến
3.5 Toán tử
3.6 Một số đối tượng dữ liệu
3.7 Cấu trúc điều khiển
3.8 Hàm
3.9 Lớp - Đối tượng
93.1. Giới thiệu
JavaScript thường dùng
tạo hiệu ứng cho các ảnh trong trang web
trò chơi (game)
trả lời các sự kiện: nhấn chuột, di chuyển chuột,
đọc và ghi các thẻ HTML
kiểm tra tính xác thực của dữ liệu
phát hiện trình duyệt được sử dụng để duyệt web
tạo cookie
...
10
3.2. Cú pháp và quy ước
• Ghi chú: theo cú pháp của C++
– Ghi chú dòng: //
– Ghi chú đoạn: /*  */
11
3.2. Cú pháp và quy ước
break do if switch typeof
case else in this var
catch false instanceof throw void
continue finally new true while
TỪ KHÓA
12
3.2. Cú pháp và quy ước
abstract double goto native static
boolean enum implements package super
byte export import private synchronized
char extends int protected throws
class final interface public transient
const float long short volatile
debugger
TỪ KHÓA
13
3.2. Cú pháp và quy ước
arguments encodeURI Infinity Object String
Array Error isFinite parseFloat SyntaxError
Boolean escape isNaN parseInt TypeError
Date eval Math RangeError undefined
decodeURI EvalError NaN ReferenceError unescape
decodeURIComponent Function Numbe RegExp URIError
TỪ KHÓA
14
3.3. Kiểu dữ liệu
Biến trong JavaScript lưu bất kỳ giá trị của kiểu dữ liệu nào
15
3.4. Khai báo biến, phạm vi biến
• Cách đặt tên biến
– Bắt đầu bằng một chữ cái hoặc dấu _
– A..Z,a..z,0..9,_ : phân biệt HOA, Thường
• Sử dụng từ khóa var để khai báo biến
• Ví dụ: var i;
• Gán giá trị cho biến: 
– i = 10;
– i = “Mười”;
• Một biến chưa được gán giá trị thì sẽ có giá trị là 
“undefined”
16
3.4. Khai báo biến, phạm vi biến
• Phạm vi của biến gắn liền với vùng chương
trình nó được khai báo
• Biến toàn cục có phạm vi hoạt động trên toàn bộ
tài liệu (khai báo ngoài hàm)
• Biến khai báo trong hàm chỉ có tác dụng bên
trong hàm
• Một biến toàn cục được tồn tại từ khi nó được
khai báo cho đến trang web đã đóng
• JavaScript không có khái niệm phạm vi theo
khối
Đổi kiểu dữ liệu
• Biến tự đổi kiểu dữ liệu khi giá trị mà nó lưu 
trữ thay đổi
Ví dụ:
var x = 10; // x kiểu Number
x = “hello world !”; // x kiểu String
• Có thể cộng 2 biến khác kiểu dữ liệu
Ví dụ:
var x;
x = “12” + 34.5; // KQ: x = “1234.5”
• Hàm parseInt(), parseFloat() : Đổi KDL từ 
chuỗi sang số.
18
3.5. Toán tử
19
3.6. Một số đối tượng dữ liệu
• String Object
• Number Object
• Date Object
• Math Object
• Array Object
• ActiveX Object
20
3.6. Một số đối tượng dữ liệu - String
• length: chiều dài của chuổi
• constructor: Dùng để kiểm tra kiểu của biến
• prototype: Bổ sung prototype hàm cho một 
đối tượng
• Nối kết các chuỗi bằng toán tử + 
Thuộc tính
21
3.6. Một số đối tượng dữ liệu - String
Thuộc tính
22
3.6. Một số đối tượng dữ liệu - String
Phương thức
23
3.6. Một số đối tượng dữ liệu - String
Phương thức
24
3.6. Một số đối tượng dữ liệu - String
Phương thức
25
3.6. Một số đối tượng dữ liệu -
String Phương thức
26
3.6. Một số đối tượng dữ liệu -
Number
• Kiểu dữ liệu số nguyên, số thực
• Bắt đầu bằng ký số “0”: Số nguyên hệ bát 
phân
• Bắt đầu bằng “0x”: Số nguyên hệ thập lục 
phân
• VD: Cho biết giá trị thập phân tương ứng 
của các number sau:
– 125 = ?
– 010 = ? 014 = ? 028 = ?
– 0xFF = ? 0x3.12 = ?
27
3.6. Một số đối tượng dữ liệu -
Number
• constructor
• prototype
• MAX_VALUE (khoảng = 1.79E+308)
• MIN_VALUE (khoảng = 5.00E-324)
• NaN
• NEGATIVE_INFINITY (= -MAX_VALUE)
• POSITIVE_INFINITY (= -MIN_VALUE)
Thuộc tính
28
3.6. Một số đối tượng dữ liệu -
Number
Phương thức
• toExponential
numObj.toExponential([fractionDigits])
• toFixed
numObj.toFixed([fractionDigits])
• toPrecision
numObj.toPrecision([precision])
• toString
objectname.toString([radix])
radix : [2; 8; 10; 16] (các hệ cơ số)
29
3.6. Một số đối tượng dữ liệu - Number
Phương thức
30
• Chuyển chuổi thành số
parseInt(); parseFloat();
parseInt(“42”) // result = 42
parseInt(“42.33”) // result = 42
parseFloat(“42.33”) // result = 42.33
3 + 3 + parseInt(“3”) // result = 9
• Chuyển số thành chuỗi (auto)
3 + “3” // result = “33”
3 + 3 + “3” // result = “63”
(“”+ 2500) // result = “2500”
(“”+ 2500).length // result = 4
• isNaN(number) true nếu number khác NaN
• isFinite(number) true nếu number khác NaN, 
NEGATIVE_INFINITY, POSITIVE
3.6. Một số đối tượng dữ liệu -
Number Phương thức
31
3.6. Một số đối tượng dữ liệu - Math
32
3.6. Một số đối tượng dữ liệu - Date
Argument Description Example
None
Creates object with the current date and 
time.
var rightNow = new Date(); 
"month,dd, yyyy 
hh:mm:ss"
Creates object with the date represented 
by the specified month, day (dd ), 
year ( yyyy ), hour (hh), minute (mm), 
and second (ss). Any omitted values 
are set to zero.
var birthDay = new Date("March 
24, 1970"); 
Milliseconds
Creates object with date represented as 
the integer number of milliseconds after 
the epoch.
var someDate = new 
Date(795600003020); 
yyyy, mm, dd
Creates object with the date specified by 
the integer values year (yyyy), 
month (mm), and day (dd).
var birthDay = new Date(1970, 2, 
24); 
yyyy, mm, dd, 
hh, mm, ss
Creates object with the date specified by 
the integer values for the year, month, 
day, hours, minutes, and seconds.
var birthDay = new Date(1970, 2, 
24, 15, 0, 0); 
yyyy, mm, dd, 
hh, mm, ss, ms
Creates object with the date specified by 
the integer values for the year, month, 
day, hours, seconds, and milliseconds.
var birthDay = new Date(1970, 2, 
24, 15, 0, 250); 
33
3.6. Một số đối tượng dữ liệu - Date
34
3.6. Một số đối tượng dữ liệu - Date
35
3.6. Một số đối tượng dữ liệu -
Array
• var arrayObj = new Array();
• var arrayObj = new Array([size]);
• var arrayObj = new Array([element0[, 
element1[, ...[, elementN]]]]);
• var arrayObj = new Array(Array);
• Chỉ số của mảng bắt đầu từ 0
36
3.6. Một số đối tượng dữ liệu - Array
Thuộc tính và Phương thức
37
3.6. Một số đối tượng dữ liệu - Array
38
3.6. Một số đối tượng dữ liệu - Array
39
3.6. Một số đối tượng dữ liệu - Array
Mảng nhiều chiều
40
3.6. Một số đối tượng dữ liệu - ActiveX
41
3.6. Một số đối tượng dữ liệu - ActiveX
Một ví dụ
42
3.7. Cấu trúc điều khiển
• Điều kiện if
• Điều khiển switch
• Vòng lặp for
• Vòng lặp while
• Vòng lặp do  while
• Vòng lặp for  in
• Từ khóa break, continue
43
3.7. Cấu trúc điều khiển
• Hầu hết cấu trúc điều khiển trong JavaScript 
giống với C++
• Trong phần này ta chỉ đề cập cấu trúc điều 
khiển của JavaScript không có trong C++
Câu lệnh if
if (condition) 
{
statement[s] if true
} 
else 
{
statement[s] if false
}
Ví dụ:
var x = 5, y = 6, z;
- if (x == 5) { if (y == 6) z = 17; } else z = 20;
Câu lệnh switch
switch (expression) 
{
case label :
statementlist
case label :
statementlist
...
default :
statement list
}
Ví dụ :
var diem = “G”;
switch (diem) {
case “Y”:
document.write(“Yếu");
break;
case “TB”:
document.write(“Trung bình");
break;
case “K”:
document.write(“Khá");
break;
case “G” :
document.write(“Giỏi");
break;
default:
document.write(“Xuất sắc")
}
Vòng lặp for
for ([initial expression]; [condition]; 
[update expression]) {
statement[s] inside loop
}
Ví dụ:
var myarray = new Array();
for (i = 0; i < 10; i++) 
{
myarray[i] = i;
}
Vòng lặp while
while (expression) 
{
statements
}
Ví dụ:
var i = 9, total = 0;
while (i < 10)
{
total += i * 3 + 5;
i = i +5;
}
Vòng lặp do.. while
do 
{
statement
}while (expression);
Ví dụ:
var i = 9, total = 0;
do 
{
total += i * 3 + 5;
i = i +5;
} while (i > 10);
3.8 Hàm trong Javascript
• Dạng thức khai báo chung:
function Tên_hàm(thamso1, thamso2,..)
{
}
• Hàm có giá trị trả về:
function Tên_hàm(thamso1, thamso2,..)
{
return (value);
}
3.8 Hàm trong Javascript
• Ví dụ:
function Sum(x, y)
{
tong = x + y;
return tong;
}
• Gọi hàm:
var x = Sum(10, 20);
51
3.9. Lớp - Đối tượng
52
3.9. Lớp - Đối tượng
53
4. Một số hàm khác
54
4. Một số hàm khác
4. Một số hàm khác
• alert
• confirm
• prompt
55
Alert, Confirm, Prompt (1)
• Tương tác với người dung sử dụng hộp 
thoại
• window.alert(msg);
– Thông báo một nội dung đến người dùng 
(người dùng chỉ click OK).
• var r = window.confirm(msg);
– Thực hiện thông báo có ghi nhận người dung 
xác nhận (OK, Cancel). Trả về true nếu người 
dung click OK, ngược lại trả về false
Alert, Confirm, Prompt (2)
• var r = 
window.prompt(msg,default);
– Trình bày thông báo cho người dùng nhập 
liệu. Người dùng nhập liệu và click nút OK, 
Clear, hoặc Cancel.
– Trả về chuỗi người dùng nhập hoặc chuỗi 
rỗng nếu click OK. 
– Trả về null nếu click nút Cancel.
Alert, Confirm, Prompt (3)
alert(
“Chương trình cộng 2 số\n" +
“Bạn nhập vào giá trị 2 số\n" +
“Chương trình sẽ hỏi bạn có muốn thực hiện phép 
cộng không?\n"
);
var first, second, num1, num2, sum;
firstNumber = window.prompt(
“Nhập số thứ nhất", "0");
document.write("", “Bạn nhập " + first);
second = window.prompt(
“Nhập số thứ hai", "0");
document.write("", “Bạn nhập " + second);
Alert, Confirm, Prompt (4)
var ok = confirm(
“Bạn có muốn cộng 2 số?");
if (ok)
{
num1 = parseInt(first);
num2 = parseInt(second);
sum = num1 + num2;
document.write("", “Tổng của " +
first + " và" + second + " là " + sum);
}
Q & A
THE END

File đính kèm:

  • pdfbai_giang_phat_trien_ung_dung_web_web_programming_chuong_6_j.pdf