입력된 숫자를 한글로 표현하기!!



은행사이트 같은데서 많이 보던거죠?


1000000  입력하면  일백만..  이런식으로 표현되어지는..


좀 오래된 소스이지만!.  잘될거에요~~ 


그럼 즐프하세요!!




<html> 

<head> 

<SCRIPT LANGUAGE=\"JavaScript\"> 

<!-- 

function num2han(string) 

hn = new Array(\"영\",\"일\",\"이\",\"삼\",\"사\",\"오\",\"육\",\"칠\",\"팔\",\"구\"); 

hj = new Array(\"\",\"만\",\"억\",\"조\",\"경\",\"해\",\"시\",\"양\",\"구\",\"간\",\"정\",\"재\",\"극\",\"항하사\",\"아승지\",\"나유타\",\"불가사의\",\"무량대수\"); 

ul = new Array(\"영천\",\"영백\",\"영십\",\"영\"); 

tm = new Array(); 


result = \"\"; 


        if(string.charAt(0)==\"-\"){

result = \"마이너스 \";

string = string.substr(1,string.length-1);


        loop_size = Math.ceil(string.length/4); 

        string2 = \"\"; 


        for (count=string.length; count >= 0; count--) 

string2 += string.substring(count,count-1); 


        string = string2; 


        for (A=0;A<loop_size;A++) { 

sum = hj[A] + \" \"; 

                tm[A] = string.substr(A*4,4); 


                tm2 = \"\"; 


                for (count=tm[A].length; count >= 0; count--) 

                tm2 += tm[A].substring(count,count-1); 


tm[A] = tm2; 

                part_jari = tm[A].length; 


                for (D=0;D<10;D++){ 

for (B=0;B<10;B++) tm[A] = tm[A].replace(B,hn[B]); 


if (part_jari == 4) tm[A] = tm[A].charAt(0)+\"천\"+tm[A].charAt(1)+\"백\"+tm[A].charAt(2)+\"십\"+tm[A].charAt(3); 

else if (part_jari == 3) tm[A] = tm[A].charAt(0)+\"백\"+tm[A].charAt(1)+\"십\"+tm[A].charAt(2); 

else if (part_jari == 2) tm[A] = tm[A].charAt(0)+\"십\"+tm[A].charAt(1);              

else tm[A] = tm[A].charAt(0); 


for (C=0;C<4;C++) { 

if (tm[A].match(ul[C])){ part_jari--; tm[A] = tm[A].replace(ul[C],\"\"); } 

}


if (part_jari != 0) tm[A] += sum; 

        

for (loop_size;loop_size>-1;loop_size--) result += tm[loop_size]; 

        

result = result.replace(\"undefined\",\"\") 


        document.form.han.value = result; 

//--> 

</SCRIPT> 

</head> 


<body> 

<form method=post name=form> 

<input type=\"text\" name=\"num\" size=\"10\" onKeyUp=\"num2han(this.form.num.value);\"> 

<input type=\"text\" name=\"han\" size=\"100\" disabled> 

</form> 

</body> 

</html>

블로그 이미지

슬픈외로움

개발이 어려워? 모든것엔 답이있다...

,


동적 폼 엘리먼트 생성 및 ajax 를 이용한 전송


[동적으로 FORM 생성]


/* 화면 refresh없이 계속 submit해야하는 경우 form이 중복으로 document에 추가되기 때문에 reset하는 과정이 필요함. */

var $form = $("#myForm");
 if($form.length < 1) {
  $form = $("<form/>").attr({id:"myForm", method:'POST'});
  $(document.body).append($form);
 }
 $form.empty();

 

/* 정보 세팅 */

$("<input></input>").attr({type:"hidden", name:"aaaa", value:$.trim('aaaa')}).appendTo($form);

$("<input></input>").attr({type:"hidden", name:"bbbb", value:$.trim('bbbb')}).appendTo($form);





[Ajax 를 이용한 폼 전송]


/* ajax로 submit*/

$.ajax({

   url : '/testPjt/myPjt/test.do',

   data : $form.serialize(),

   dataType : 'json',

   success : function(json, textStatus, jqXHR){

     if(!json.result){
         alert('결과가 없습니다.');
     }else{
         alert('결과가 있습니다.');
     }

   }

});
 

블로그 이미지

슬픈외로움

개발이 어려워? 모든것엔 답이있다...

,

자바스크립트 소숫점 반올림하기 Math.round()

 

 

 

자바스크립트로 소숫점 숫자 표현하는 방법입니다.

 

 

Math.round(값) - 값을 반올림합니다.

Math.ceil(값) - 값을 올림합니다.

Math.floor(값) - 값을 내림합니다.

Math.parseInt(값) - 값을 정수로 바꿉니다. (값이 소숫점이 있는 숫자일 경우엔 소숫점 이하를 잘라버립니다. 내림)

 

 

10의 n승을 곱하고 반올림 한 결과를 다시 10의 n승으로 나누면

원하는 소숫점 자릴수를 표현할 수 있습니다

 

 

========= sample ============

<script>
document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'반올림 (소숫점0번째까지)<br/>'+
'Math.round(45.67890) : '+
Math.round(45.67890);

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'올림 (소숫점0번째까지)<br/>'+
'Math.ceil(45.67890) : '+
Math.ceil(45.67890);

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'내림 (소숫점0번째까지)<br/>'+
'Math.floor(45.67890) : '+
Math.floor(45.67890);

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'내림 (소숫점0번째까지)<br/>'+
'parseInt(45.67890) : '+
parseInt(45.67890);

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'소숫점 2번째까지 반올림<br/>'+
'Math.round(123.4567) : '+
Math.round(123.4567*100)/100;

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'소숫점 4번째까지 올림<br/>'+
'Math.ceil(123.4567) : '+
Math.ceil(123.4567*10000)/10000;

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'소숫점 4번째까지 내림<br/>'+
'Math.floor(123.4567) : '+
Math.floor(123.4567*10000)/10000;

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'소숫점 3번째까지 내림<br/>'+
'parseInt(123.4567) : '+
parseInt(123.4567*1000)/1000;

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'소숫점있는 문자열을 숫자(float)로 변환<br/>'+
'parseFloat("12.3456789") : '+
parseFloat("12.3456789");

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'앞에 0이 있는 문자열을 숫자(float)로 변환<br/>'+
'parseInt("098.765") : '+
parseInt("098.765");

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'앞에 0이 있는 문자열을 숫자(integer)로 변환<br/>'+
'parseInt("011") : '+
parseInt("011");

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'문자를 숫자(float)로 변환<br/>'+
'parseFloat("안두리") : '+
parseFloat("안두리");

 

document.body.innerHTML=document.body.innerHTML+'<br/><br/>'+
'문자를 숫자(integer)로 변환<br/>'+
'parseInt("ahndoori") : '+
parseInt("ahndoori");
</script>
블로그 이미지

슬픈외로움

개발이 어려워? 모든것엔 답이있다...

,

Javascript 에서 Request 의  Parameter 값 구하기

 

1. Javascript에서 request.getParameter 사용

 

Javascript 를 이용한 Request 파싱은 GET 형태의 파라메터만 가능함.

1) Request 를 function 으로 생성
======================================================================================================

function Request(){
 var requestParam ="";
 
 //getParameter 펑션
  this.getParameter = function(param){
  //현재 주소를 decoding
  var url = unescape(location.href);
  //파라미터만 자르고, 다시 &그분자를 잘라서 배열에 넣는다.
   var paramArr = (url.substring(url.indexOf("?")+1,url.length)).split("&");
 
   for(var i = 0 ; i < paramArr.length ; i++){
     var temp = paramArr[i].split("="); //파라미터 변수명을 담음
 
     if(temp[0].toUpperCase() == param.toUpperCase()){
       // 변수명과 일치할 경우 데이터 삽입
       requestParam = paramArr[i].split("=")[1];
       break;
     }
   }
   return requestParam;
 }
}


======================================================================================================

2) 사용예
 
  // Request 객체 생성
 var request = new Request();
 // test 라는 파라메터 값을 얻기
  request.getParameter("test");

블로그 이미지

슬픈외로움

개발이 어려워? 모든것엔 답이있다...

,

 

Javascript 로 홈페이지 즐겨찾기 추가 버튼 및 시작페이지로 등록하기

 

1. 즐겨찾기

 

//즐겨찾기 스크립트
function bookmark_add() {
     bookmark_url  = "도메인입력";
     bookmark_name = "홈페이지 타이틀";
    
     try {
      window.external.AddFavorite(bookmark_url,bookmark_name);
     } catch(e) {
      alert('이 브라우저는 즐겨찾기 추가 기능을 지원하지 않습니다.');
      return false;
     }
 }

 

적용은 아래와 같이..
 <a href="javascript: bookmark_add();">즐겨찾기 추가</a>

 


 2. 시작페이지로


<a href="#" onClick="this.style.behavior='url(#default#homepage)';this.setHomePage('도메인입력');">시작페이지로</a>

 

 

빨간글씨 도메인입력 부분에 원하는 사이트를 적어주면됩니다.

블로그 이미지

슬픈외로움

개발이 어려워? 모든것엔 답이있다...

,

Javascript 의 random 함수를 사용하여 랜덤한 수를 구하는 방법입니다.

 

Math.random() 함수를 호출하게 되면, 기본적으로 소숫점 17 자리의 랜덤한

숫자가 발생되어지게 됩니다.

 

var a = Math.random();

결과 = 0.19049736162660652

 

이제 이렇게 발생한 수를 이용하시면 되는데요..

만약 1 ~ 10 사이의 랜덤한 수를 뽑는다고 한다면, 이론적으로 Math.random() 으로

발생한 숫자에 10 을 곱해서 정수형 숫자가 나오게 합니다.

 

a = a * 10;

결과 = 1.9049736162660652

 

이런 결과가 나오겠네요.  여기에서 다른 Javascript 함수인 Math.floor() 함수를 이용하여 소숫점 아래자리를 버립니다.

< Math.floor 함수는 소숫점 아래 자리를 버리는 함수 >

 

a = Math.floor(a);

결과 = 1

 

이런 결과가 나오게 됩니다.

 

이렇게 하게되면 나올 수 있는 결과값은 0 ~ 9 까지 나올 수 있게 됩니다.

우리가 구하려는 범위는 1~ 10 사이 이기 때문에,  나온 결과값에 +1 을 해주게되면

1~10 사이의 랜덤한 숫자를 구할 수 있게 되는 것입니다.

 

지금까지의 과정을 한줄로 요약하면....

 

var a = Math.floor(Math.random()*10) + 1;

결과 =  1 ~ 10 사이의 랜덤한 숫자

 

 

 

블로그 이미지

슬픈외로움

개발이 어려워? 모든것엔 답이있다...

,