Monthly Archives: September 2009

UnitTest???

  • Khó có thể viết Unit Test để bắt tất cả các lỗi của 1 chương trình.
  • Chỉ kiểm tra được lỗi của những unit nhỏ nhất của chương trình do đó không thể nào lường trước những vấn đề có thể xảy ra khi kết hợp các module với nhau.
  • Chỉ có thể kiểm tra được những lỗi đã biết chứ không thể sử dụng nó để tìm ra các lỗi tiềm ẩn của chương trình.
  • Viết Unit Test ít ra cũng giúp cho việc refactor code sau này dễ dàng hơn.

Sưu tầm + nghĩ linh tinh :(

Parse single Javascript object in Jquery by $.ajax method

Chưa thử test với Jquery phiên bản mới nhất, mới chạy trên bản 1.2.1 (dự án hiện tại đang dùng :( ). Khi sử dụng $.ajax như bên dưới thì phát sinh lỗi:

?View Code JAVASCRIPT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$.ajax({
	type: "POST",
	url: document.location.href,
	data: "card_type=" + cardType + "&card_number=" + cardNumber,
	dataType: 'JSON',
	cache: false,
	success: function(responses){
	    if(!responses.has_error)
	    {
	 	alert("Please enter valid Card Number.");
	 	return false;
	    }
       }
});

thì bị lỗi. Mặc dù response là {‘has_error’: false;} nhưng lại không nhảy vào khối lệnh IF.
Cách khắc phục rất đơn giản:

?View Code JAVASCRIPT
1
2
3
4
5
6
7
8
9
...
success: function(responses){
    var obj = eval('('+responses+')');
    if(!obj .has_error)
    {
	alert("Please enter valid Card Number.");
	return false;
    }
}

Lưu ý: Chỉ xảy ra lỗi này nếu response là single object, nếu nó là mảng các object thì cứ $.each rồi get theo key, val thì lại ko sao :(