VIẾT MỘT SỐ JAVASCRIPT PROGRAMS ĐƠN GIẢN
1 - Vài qui tắc căn
bản cần biết khi viết JavaScript Programs
Function definition còn được gọi là function declaration phải có đủ các
điều kiện kê sau.
Chữ
function bắt buộc phải viết
đúng như vậy còn tên của nó thì tuỳ ý chúng ta chọn.
Những
arguments phải được bọc trong parenthesis
Không
có khoảng cách giữa tên của function với dấu parenthesis ( )
Statement là standalone element nhỏ nhất của ngôn ngữ Javascript.
Function
phải có một block trong đó có nhiều statements.
Trong
statement chúng ta có thể viết variables,strings,numbers,expressions
Mỗi
statement được viết riêng trong một hàng hoặc trong nhiều hàng được
bọc trong dấu parenthesis ( ) và được kết thúc bằng dấu chấm phẩy.
Không có khỏang cách giữa dấu ) right parenthesis với dấu { left curly brace khi bắt đầu viết statement.
Dấu
} right curly brace của function phải viết cùng một cột với
chữ f của function.
Có
thể viết nhiều statements trên cùng một hàng nhưng phải ngăn cách bởi
dấu chấm phẩy.
Block
được bọc trong dấu curly braces { } nhưng không có dấu chấm phẩy sau cùng.
Block
được xử dụng như một single statement.(Treated as a single statement)
Những statements phía dưới function vì
nằm ngoài block nên không thuộc sự vận hành của function.
2 - Cũng cần nên
biết cách xử dụng những JavaScript
Statements có tên sau đây trước khi viết JavaSript programs vì phải dùng
đến :
break, cost, continue,
debugger, do…while, export, for, for…in, for each …in, function, if…else,
import, label, return, switch…case, this, throw, try… catch, var, while with.
-------------------------------
3 - SOME EXAMPLES
OF SIMPLE JAVASCRIPT PROGRAMS
Thí dụ 1 . Xử dụng statement return
Có
2 lý do chúng ta phải xử dụng return.
*
Muốn function returns kết quả.Thí dụ A
*
Muốn ngưng vận hành các statements còn lại khi return vận hành.Thí dụ B.
Nghĩa là khi return vận hành thì function returns ngay kết quả và các statements
còn sót lại không vận hành.
Trong thí dụ
trên, dùng variable value (3,
21) để call function toancong(x, y)
Function theo
mệnh lệnh của var cong = x+y , liền return value cộng để chứa trong var ketqua.
alert (ketqua) cho output 24 .
Như vậy chữ return luôn luôn phải có một expression đi theo..Expression nầy là
value mà chúng ta muốn function phải return rồi tồn trử trong var ketqua.
Nếu không có
expression thì alert () sẽ cho undefined
Thí
dụ B
Chúng ta chú ý
thí dụ đơn giản nầy.Trong script nầy có 2 popups alert() .
alert(‘Hello Friends.’) và
alert(‘How are you.?’)
Nếu chúng ta
viết chữ return dưới alert(‘Hello Friends.’) thì alert(‘How are you.?’)
không xuất hiện vì return chận lại.
Xóa bỏ chữ return thì alert thứ hai xuất hiện.
function test(){
alert('Hello
friends.');
return;
alert('How are
you.?');
}
test();
Thí dụ 2 – Viết
program đổi tiền Japanese Yen ra tiền US Dollar.
Trong
script nầy chúng ta muốn dừng chỗ nào thì viết return chỗ đó.
Thí
dụ chúng ta muốn đổi số tiền 5241 Japanese
Yen ra tiền US Dollar.
Hiện
nay 100 Yen tương đương với 1 US Dollar. Nếu có ít hơn hay bằng
45 Yen thì chúng ta không cần
đổi nữa nên viết return 0 .
Nếu không muốn lấy tiền lẽ nặng túi thì dùng parseInt() loại bỏ số lẽ.
var yen = 5241;
function yentoDol(yen){
if (yen <=45)
// nêu ít hơn hoặc bằng 45 Yen thì bỏ đi
return 0;
else {
var dol = yen/
100;
return parseInt(dol);}
}
var dol = yentoDol(yen);
alert("The value in dol is " + dol); // output 52 vì dùng parseInt() loại
bỏ số lẽ.
Thí dụ 3 - JavaScript program có xử dụng nested function và return statement.
function()
chứa trong function() gọi JavaScript
nested function
Xem function inner( ) là một variable object . Dùng return để call function nầy.
Nếu không call sẽ bị undefined.
Viết
javaScript program dùng nested function và return statement.
Nested function còn gọi function inside
function.
Nested function có thể xử dụng variables của
outer function nhưng outer function không thể xử dụng variables của nested
function..Đó là một lý do có nhiều người thích dùng nested function
để viết JavaScript program như thí dụ nầy.
Đây là một JavaScript program viết cho tờ biên nhận ( receipt ) của một cữa hàng bán mè xững Huế tại thành phố Huế VN.
Đây là một JavaScript program viết cho tờ biên nhận ( receipt ) của một cữa hàng bán mè xững Huế tại thành phố Huế VN.
Chúng ta có thể đem hết các variables của function inner() đặt trong function outer() ngoại trừ
var total vì function inner() có thể access tất cả các variables và parameters của function outer().
function outer(x1, x2, x3, x4) {
var str1= '100g meXung';
var unitprice = 1.99;
var quantity = parseInt(prompt('Bạn muốn mua bao nhiêu kẹo mè xửng?'));
var currency= 'USD';
function inner(x3, x4) {
var total = parseFloat(x2*x3);
return('Tên món hàng'+':'+ str1 +'\n'
+'Giá đơn vị'+':'+ unitprice +'\n'
+ 'Số lượng'+':'+ quantity +'\n'
+'Tổng cộng'+':'+ total +' '+ currency);
}
return inner(quantity,'USD')// phải call inner thì function mới vận hành.
}
alert(outer('100g meXung', 1.99 ,'USD'))
var total vì function inner() có thể access tất cả các variables và parameters của function outer().
The nested function can access any variables and parameters of the outer function().
The outer function() cannot access the variables of the inner function (nested function).
var str1= '100g meXung';
var unitprice = 1.99;
var quantity = parseInt(prompt('Bạn muốn mua bao nhiêu kẹo mè xửng?'));
var currency= 'USD';
function inner(x3, x4) {
var total = parseFloat(x2*x3);
return('Tên món hàng'+':'+ str1 +'\n'
+'Giá đơn vị'+':'+ unitprice +'\n'
+ 'Số lượng'+':'+ quantity +'\n'
+'Tổng cộng'+':'+ total +' '+ currency);
}
return inner(quantity,'USD')// phải call inner thì function mới vận hành.
}
alert(outer('100g meXung', 1.99 ,'USD'))
Đây là receipt printout .