[WebSquare] 웹스퀘어 bigDecimal 빅데시멀 사용하기

2024. 9. 10. 15:56·웹 개발/WebSquare

 

 

WebSquare.bigDecimal

  • 정적 클래스: WebSquare 자체에서 제공하는 전역적인 정적 클래스
  • 직접 호출: 일반적으로 WebSquare가 제공하는 내장 함수로, 해당 함수를 직접 호출하여 사용
  • 용도: 주로 전역적으로 사용되며, WebSquare 화면 또는 함수 내에서 바로 접근 가능하게 설정
  • 페이지나 컴포넌트에 관계없이 전역적으로 사용 가능

 

 

웹스퀘어 공식 예제1

var a = WebSquare.bigDecimal("123456789012345678901234567890"); 
var b = WebSquare.bigDecimal("111111111111111111111111111111"); 
var c = WebSquare.bigDecimal("678901234567890123456789012345"); 
var d = WebSquare.bigDecimal("345678934567893456789345678934"); 
var ret = WebSquare.bigDecimal.calc("a + b c + (d - a) / (c + d)"); 
input1.setValue(ret);

 

 

웹스퀘어 공식 예제2

var a = WebSquare.bigDecimal("1234"); 
var b = 3000; 
var ret = WebSquare.bigDecimal.calc ("a+b*b-b/(a+b)");

Number + bigDecimal 연산도 가능함. 단 Number는 17자리 이하여야 함.

 

 

웹스퀘어 공식 예제3

var a = "abcd"; // NaN 
var b = WebSquare.bigDecimal("200"); 
var ret = WebSquare.bigDecimal.calc("a + b"); 
input2.setValue(ret);

연산 결과는 NaN 데이터를 나타내는 bigDecimal 타입. 숫자 타입이 아닌 데이터와 연산하면 전부 NaN이 된다.

 

 

 


 

 

 

$p.bigDecimal

  • 동적 함수: $p 객체는 WebSquare에서 특정 페이지나 컴포넌트에 바인딩된 함수
  • 컨텍스트 의존적: 특정 페이지나 스코프 내에서 $p 객체를 통해 호출해야 하며, 페이지나 스코프에 따라 다르게 동작
  • 용도: 해당 페이지나 컨텍스트에 종속된 빅데시멀 연산에 사용되며, 페이지 간 상호작용이 있을 때 자주 사용
  • 해당 페이지나 컴포넌트의 컨텍스트 내에서만 작동하므로, 전역 변수로 직접 사용 불가

 

 

scwin 객체에 대입하는 방법

scwin.num1 = $p.bigDecimal("123456789012345678901234567890");
scwin.num2 = $p.bigDecimal("1111111111111111111111111111111");
scwin.num3 = $p.bigDecimal("678901234567890123456789012345");
scwin.num4 = $p.bigDecimal("345678901234567890123456789012");


var ret = $p.bigDecimal.calc("scwin.num1 + (scwin.num2 * scwin.num3) - scwin.num3 / (scwin.num1 + scwin.num2)");

 

 


변수 선언 후 각각의 변수가 가지고 있는 연산 함수들로 계산하는 방법

var a = $p.bigDecimal("111111111111111111");
var b = $p.bigDecimal("2222222222222222");

var result = a.plus(b);

input2.setValue(result);



 

 

 

 

bigDecimal 연산함수 종류

연산함수 종류
divide(bigDecimal) 나눗셈
minus(bigDecimal) 뺄셈
plus(bigDecimal) 덧셈
pow(bigDecimal) 제곱
times(bigDecimal) 곱셈
mod(bigDecimal) mod연산, 나눈 나머지 반환

 

 

 

 

 

반응형

'웹 개발 > WebSquare' 카테고리의 다른 글

[WebSquare] 그리드 행 추가와 행 삭제, 행 추가 시 default값 세팅하기  (0) 2024.09.19
[WebSquare] 웹스퀘어 inputBox의 정수와 소수 자릿수 고정하기  (0) 2024.09.09
[WebSquare] 웹스퀘어 그리드에서 콤보 띄우기 속성  (0) 2024.07.28
[WebSquare] 웹스퀘어 TreeView 트리뷰 구현하기  (0) 2024.06.05
'웹 개발/WebSquare' 카테고리의 다른 글
  • [WebSquare] 그리드 행 추가와 행 삭제, 행 추가 시 default값 세팅하기
  • [WebSquare] 웹스퀘어 inputBox의 정수와 소수 자릿수 고정하기
  • [WebSquare] 웹스퀘어 그리드에서 콤보 띄우기 속성
  • [WebSquare] 웹스퀘어 TreeView 트리뷰 구현하기
오은이
오은이
  • 오은이
    오은이 하우스
    오은이
  • 전체
    오늘
    어제
    • 분류 전체보기 (85)
      • 일기 (2)
      • Python (1)
      • Java (4)
      • CS (2)
      • 코딩테스트 (26)
        • 백준 (25)
        • 프로그래머스 (1)
      • 웹 개발 (18)
        • Spring (7)
        • JavaScript (3)
        • WebSquare (5)
        • React (3)
      • DB (5)
        • MySQL (4)
        • Oracle (1)
      • 서버&인프라 (18)
        • Server (5)
        • Cloud (12)
        • Linux (1)
      • 자격증 (9)
        • 정보처리기사 (2)
        • AICE (7)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    오블완
    머신러닝
    AICE
    웹스퀘어
    docker
    cloud DB
    dockerspring
    react
    db
    MySQL
    티스토리챌린지
    docker배포
    tomcat
    AICE Associate
    SpringBoot
    Spring
    Associate
    알고리즘
    자바
    리액트
    백준
    클라우드 배포
    AI
    백준자바
    websquare
    Apache
    클라우드
    톰캣
    Java
    EC2
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
오은이
[WebSquare] 웹스퀘어 bigDecimal 빅데시멀 사용하기
상단으로

티스토리툴바