trunc

{{ num | trunc }}

{{ num | trunc(2) }}

<div id="app">
  <p><input v-model="num"></p>
  <p>{{ num | trunc }}</p>
  <p>{{ num | trunc(2) }}</p>
</div>
new Vue({
  el: '#app',
  data: {
    num: 3.14159
  },
  filters: {
    trunc(num, n) {
      if (!num) return num
      const digit = String(num).split('.')[1]
        ? String(num).split('.')[1].length
        : null
      if (!digit) return num
      Math.trunc = Math.trunc || function(x) {
        return x < 0 ? Math.ceil(x) : Math.floor(x);
      };
      if (n > 1) {
        num *= 10 ** n
        return Math.trunc(num) / 10 ** n
      } else {
        return Math.trunc(num)
      }
    }
  }
})