자바스크립트 for 웹2.0  (2008/02/14)
셸리 파워즈 저/김태경,김대영 공역 | 한빛미디어 | 2007년 05월 | ISBN-13 : 9788979144871

경력 10년 차인데 자바스크립트 책을 보고 있노라면 좀 뭐 같이 보는 이가 있다. 프리랜서들과 작업해서 그런지 더욱 그런 것 같다. 분명 그들은 표현하지 않음에도 느낀다는 건 어쩌면 내 자격지심일 것은 자명한 일이다. 겸손해지고 모른다고 언제든 말할 수 있고, 또 모르기에 열심히 배우는 것에 주저하지 않기!를 또 한번 제대로 느끼게 해준 책이다. 나는 자바스크립트를 제대로 모른다. 진실로.

역자 서문에 "자바스크립트를 프로그래밍 언어의 관점에서 접근한다는 점이다" 란 것이 이 책 전체를 표현한다고 본다. 그리고, 나 역시 언어로서 제대로 대접해야 함을 깊이 인정했다. 방법서의 효용은 기술습득 및 이용에 있다. 그렇다면 이책은 나에게 오랜만에 제대로 된 낚시법을 배워준 책이다. 난이도와 체계도 찰떡궁합이었다.  그렇게, 온전히 제대로 실습까지 하면서 읽어냈다.(전체 14장 중에 13장 까지만)

14장은 단박에 이해할 수 없는 내용이다. 변명같지만, prototype만 가지고도 몇권 씌여져 있기 때문이다. 좀더 찬찬히 보고 제대로 이해할 수 있을때가 되면 Xquared http://xquared.springbook.playmaru.net/ 과 더불어 정리할 예정!

[기억남는 구절]

0, "", NaN, null, undefined 는 false다.
나머지는 전부 true 다
-p75  => 위 대목을 읽으면서 책읽는 이유 한가지를 발견했다. 그것은 달인(고수)으로 가는 시간 단축인 것이다. 아직은 시간 축만이 공평함으로... ... ... 물론, 자기와 맞는 책을 만났을 경우지만. 그렇기에 양서 고르는 법에 통달해 있어야 한다.

[연결]  내가 쓴 자바스크립트 관련 글
http://blog.jrcho.com/1251
http://blog.jrcho.com/1248
http://blog.jrcho.com/1307
http://blog.jrcho.com/1268 
Posted by iarchitect
 defaultValue란 속성을 가지고 이전 값과 변했는지 안했는지
알 수 있는 html과 자바스크립트 소스 입니다.

defaultValue
defaultSelected
등등의 값을 통해 html 태그의 값을 알 수 있습니다.

물론, binding이 된 데이터들은 ado.net의
DataTable 의 DataRow속성을 이용해 서버 쪽에서 처리해서 해결할 수도 있겠지요!

자바스크립트에 대한 도움사이트입니다.
http://koxo.com/lang/js/index.html
35번 서버 리부팅한다고 해서 ... 잠깐 시간내어 만들어보았습니다.

1.js

function lfnIsChange(){
    var mForm= document.getElementById("mainForm");
    var changeFlg = false;    
    var tmpObj;
    for(i=0;i<mForm.length;i++)
    {
        tmpObj = mForm.elements[i];    
        if(tmpObj.type == "text")
        {
            if(tmpObj.value != tmpObj.defaultValue)
           {
                changeFlg = true;
                break;
            }
        }
        else if(tmpObj.type == "textarea")
        {
            if(tmpObj.value != tmpObj.defaultValue)
            {
                changeFlg = true;
                break;
            }
        }
        else if(tmpObj.type == "select-one")
        {
            var defaultSelectedIndex = 0;
            for(j=0;j<tmpObj.options.length;j++)
            {
                if(tmpObj.options[j].defaultSelected)
                {
                    defaultSelectedIndex = j;
                    break;
                }           
             }            

            if(tmpObj.selectedIndex != defaultSelectedIndex)
            {
                changeFlg = true;
                break;
            }
        }

//          case "text":            
//          case "password":    
//          case "radio":      
//          case "checkbox":    
//          case "select-one":  
//          case "select-multiple":
//          case "file":        
//          case "textarea":
    }

if(changeFlg)
        alert("값이 변했다는 것입니다.");
    else
        alert("값이 안변했다는 것입니다.");
    return changeFlg;
}

    1.html

<html>
<head>
<script type="text/javascript" src="1.js"></script>
</head>
<body>
<form id="mainForm" onsubmit="return lfnIsChange()">
    <input id="in1" type="text" value="1">
    <input id="in1" type="text" value="1">
    <input type="submit" value="전송">
</form>
</body>
</html>

Posted by iarchitect

자바스크립트 널 하나의 언어로 인정해 주겠다.
웹 페이지 안에 너 있음을 안다.
배우 말을 흉내내면, 웹프로그래밍 하는 동안에는
내안에 너(javascript) 있다.

1. Error 처리

http://www.webreference.com/js/tips/991209.html

2. 예외 처리 - 예제를 예외로 보기는 어려운 상황이지만. ^^;

물론, 이건 javascript1.2 이상에만 지원되는가 보다.

'컴퓨터(InfoTech)' 카테고리의 다른 글

[형상관리] 소스관리 VSS 2005  (0) 2007/03/25
블루투스  (2) 2007/03/24
javascript - 두가지 (Error 객체, try-catch)  (0) 2007/03/24
web programming  (0) 2007/03/22
FxCop 1.32  (0) 2007/03/09
용어 term 와 영어  (0) 2007/02/22
Posted by iarchitect