handlerbar js 확장 산술 더하기 도우미

네오

핸들 바 js에 통화를 추가하는 도우미를 작성했습니다. 이것은 두 가지 항목에 대해 작동하지만이를 여러 항목으로 확장하려면 어떻게해야합니까?

즉,

{{total a b}}

Handlebars.registerHelper("total", function(a,b) {
  return "$"+(Number(a.replace(/[^0-9\.]+/g,"")) + Number(b.replace(/[^0-9\.]+/g,""))).toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
});

to, n 개의 항목. 즉,

{{total a b c d}}

그런 것을 얻기 위해 도우미를 작성하는 방법?

Blessenm

이것은 당신이 찾고있는 것이어야합니다

Handlebars.registerHelper("total", function(a,b) {    
  var nums = [].slice.call(arguments,0,-1);      
  var sum = nums.reduce(function(prev,next) {
    return prev + Number(next.replace(/[^0-9\.]+/g, ""));
  },0);    
  return "$" + sum.toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');
});

다음 컨텍스트 및 템플릿을 사용하여 tryhandlebarsjs 에서 이를 테스트 할 수 있습니다.

{ 
  "a": "10",
  "b": "20",
  "c": "30",
  "d": "40" 
}

{{total a b c d}}

도우미 내부 options에는 인수와 함께 추가 개체 가 있습니다 . options개체는 마지막 인자이다. 따라서 먼저 전달 된 인수 목록을 가져와야합니다 options.

arguments함수 내에서 액세스 할 수있는 자바 스크립트 키워드입니다. 전달 된 모든 인수를 보유하는 객체와 같은 배열입니다. slice 메소드가 없기 때문에 array의 slice 메소드를 사용하고 있습니다. 인수 ( call) 의 컨텍스트에서 해당 메서드를 실행합니다 . 그래서 우리는이 선을 사용합니다

var nums = [].slice.call(arguments,0,-1);

다음 줄에서는 내장 reduce메서드를 사용하여 배열을 반복합니다 .

나머지 코드는 설명이 필요하지 않습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

리튬의 도우미 기능 확장

분류에서Dev

Bash-범위 중괄호로 산술 확장하는 방법?

분류에서Dev

정수 산술 더하기 및 빼기가 IEEE 배정 밀도 부동 소수점의 정수에 대해 정확한 범위는 무엇입니까?

분류에서Dev

산술 식에서 변수 확장을 위해 간접 확장을 사용하는 두 가지 예 이해

분류에서Dev

typeof 연산자를 사용하는 기본값에 대한 Node.js / javascript 도우미

분류에서Dev

확장 / 사용자 지정 도우미를 사용하지 않고 dust.js에서 루프를 제한 할 수 있습니까?

분류에서Dev

임의의 정밀도없이 기본 산술 만 사용하여 pi 계산

분류에서Dev

MySQL 산술 빼기

분류에서Dev

asp.net-mvc-보기 데이터를 전달하기위한 HTML 도우미 확장 만들기

분류에서Dev

매우 큰 팩토리얼을 사용하는 임의 정밀도 산술

분류에서Dev

중첩 된 요소를 계산하는 Handlebars.js 사용자 지정 도우미

분류에서Dev

중첩 된 요소를 계산하는 Handlebars.js 사용자 지정 도우미

분류에서Dev

C 산술 식 계산기

분류에서Dev

시퀀스 내에서 가장 긴 산술 진행 찾기

분류에서Dev

산술 순서를 확인하는 방법

분류에서Dev

<=, ==,를 제외하고 미리 정의 된 함수 나 산술 연산자를 사용하지 않고 [Int]에서 가장 작은 Int를 가져옵니다.

분류에서Dev

제한된 시도로 간단한 산술 도전 기능

분류에서Dev

mysql 기능 확장 계산

분류에서Dev

Razor보기에서 HTML 도우미에 포함 된 확장 메서드를 사용하는 방법

분류에서Dev

배열이 산술 또는 기하학적 진행인지 확인 (Coderbyte에서)

분류에서Dev

Ember-{{component}} 도우미 확장

분류에서Dev

Three.js 확장 기하학

분류에서Dev

JS-Chrome 확장-선택하기

분류에서Dev

fabric.js 전체 이미지를 확장하는 가장 쉬운 방법

분류에서Dev

Rx.js : 확장 연산자 이해

분류에서Dev

가장 긴 산술 진행

분류에서Dev

Bash : 산술 확장, 매개 변수 확장 및 쉼표 연산자

분류에서Dev

산술 평균을 계산할 때 더 정확한 합산 방법은 무엇입니까?

분류에서Dev

Sutskever의 기술을 사용하여 역전 파로 미분 계산

Related 관련 기사

  1. 1

    리튬의 도우미 기능 확장

  2. 2

    Bash-범위 중괄호로 산술 확장하는 방법?

  3. 3

    정수 산술 더하기 및 빼기가 IEEE 배정 밀도 부동 소수점의 정수에 대해 정확한 범위는 무엇입니까?

  4. 4

    산술 식에서 변수 확장을 위해 간접 확장을 사용하는 두 가지 예 이해

  5. 5

    typeof 연산자를 사용하는 기본값에 대한 Node.js / javascript 도우미

  6. 6

    확장 / 사용자 지정 도우미를 사용하지 않고 dust.js에서 루프를 제한 할 수 있습니까?

  7. 7

    임의의 정밀도없이 기본 산술 만 사용하여 pi 계산

  8. 8

    MySQL 산술 빼기

  9. 9

    asp.net-mvc-보기 데이터를 전달하기위한 HTML 도우미 확장 만들기

  10. 10

    매우 큰 팩토리얼을 사용하는 임의 정밀도 산술

  11. 11

    중첩 된 요소를 계산하는 Handlebars.js 사용자 지정 도우미

  12. 12

    중첩 된 요소를 계산하는 Handlebars.js 사용자 지정 도우미

  13. 13

    C 산술 식 계산기

  14. 14

    시퀀스 내에서 가장 긴 산술 진행 찾기

  15. 15

    산술 순서를 확인하는 방법

  16. 16

    <=, ==,를 제외하고 미리 정의 된 함수 나 산술 연산자를 사용하지 않고 [Int]에서 가장 작은 Int를 가져옵니다.

  17. 17

    제한된 시도로 간단한 산술 도전 기능

  18. 18

    mysql 기능 확장 계산

  19. 19

    Razor보기에서 HTML 도우미에 포함 된 확장 메서드를 사용하는 방법

  20. 20

    배열이 산술 또는 기하학적 진행인지 확인 (Coderbyte에서)

  21. 21

    Ember-{{component}} 도우미 확장

  22. 22

    Three.js 확장 기하학

  23. 23

    JS-Chrome 확장-선택하기

  24. 24

    fabric.js 전체 이미지를 확장하는 가장 쉬운 방법

  25. 25

    Rx.js : 확장 연산자 이해

  26. 26

    가장 긴 산술 진행

  27. 27

    Bash : 산술 확장, 매개 변수 확장 및 쉼표 연산자

  28. 28

    산술 평균을 계산할 때 더 정확한 합산 방법은 무엇입니까?

  29. 29

    Sutskever의 기술을 사용하여 역전 파로 미분 계산

뜨겁다태그

보관