在方案中我有代码
(* -1(expt -1 k)
交替显示来自-
和+
的符号,我只是想知道是否有另一种方法可以在没有指数符号的情况下执行此操作,可能使用模数?
答案 0 :(得分:2)
(* -1 (expt -1 k))
会对奇数值产生-1
,对k的偶数值产生1
。你可以用以下方法替换:
(if (odd? k) -1 1)
关于这一点的好处是几乎完全解释了我解释的另一个实际上在数学上。
此外,您不需要(* -1 value)
来消极。它足以完成(- value)
(- 0 value)
的缩写<template>
<div class="box has-text-centered" id='count' v-if='inViewport.now'>
/.../
</div>
</template>
<script>
import axios from 'axios';
import * as inViewport from './mixins/vue-in-viewport-mixin';
export default {
name: 'Counter',
data() {
return {
/.../
inViewport: {
now: false
}
}
},
methods: {
count: function() {
const that = this;
setInterval(function() {
if (that.number < that.numberOfLikes) {
that.number += 1
}
}, 1)
}
},
mixins: [inViewport],
watch: {
'inViewport.now': function(visible) {
visible ? this.count() : console.log('not')
}
}
}
</script>
。