diff --git a/packages/circle/index.ts b/packages/circle/index.ts
index 419dfbeb..f43bd017 100644
--- a/packages/circle/index.ts
+++ b/packages/circle/index.ts
@@ -185,10 +185,14 @@ VantComponent({
       this.currentValue = this.currentValue || 0;
       this.interval = setInterval(() => {
         if (this.currentValue !== value) {
-          if (this.currentValue < value) {
-            this.currentValue += STEP;
+          if (Math.abs(this.currentValue - value) < STEP) {
+            this.currentValue = value;
           } else {
-            this.currentValue -= STEP;
+            if (this.currentValue < value) {
+              this.currentValue += STEP;
+            } else {
+              this.currentValue -= STEP;
+            }
           }
           this.drawCircle(this.currentValue);
         } else {