Tôi đang tìm một cách thông minh để tăng và sau đó giảm biến số lượt truy cập. Tôi muốn biến số lượt truy cập bắt đầu với giá trị thấp và tăng dần, hướng tới giá trị cao hơn. Khi nó đạt đến giá trị cao hơn, bộ đếm sẽ giảm xuống cho đến khi nó đạt tới giá trị thấp hơn. Khi nó đạt đến giá trị thấp hơn, bộ đếm sẽ tăng trở lại với giá trị cao hơn ... Tôi nghĩ bạn sẽ có được điểm.Làm thế nào chúng ta có thể tăng và sau đó giảm một bộ đếm mà không có điều kiện?
tôi đang làm việc trên aa canvas animation nơi tôi muốn sử dụng một số thông minh, mà không sử dụng if
hoặc các xét nghiệm khác có điều kiện:
Đây là logic có điều kiện để xử lý các biến truy cập:
incrementing = true
foo = ->
length += 1 if incrementing
length -= 1 if not incrementing
incrementing = false if length > 100
incrementing = true if length < 1
Ban đầu, tôi nghĩ rằng tôi có thể sử dụng modulo. Tuy nhiên, phân chia modulo chỉ đặt lại bộ đếm ngược về giá trị thấp hơn - nó không làm giảm bộ đếm khi nó đạt đến giá trị cao nhất.
0 % 10 = 0
1 % 10 = 1
2 % 10 = 2
3 % 10 = 3
4 % 10 = 4
5 % 10 = 5
6 % 10 = 6
7 % 10 = 7
8 % 10 = 8
9 % 10 = 9
10 % 10 = 0
11 % 10 = 1
12 % 10 = 2
13 % 10 = 3
Tôi chắc chắn phải có cách để thực hiện việc này mà không sử dụng kiểm tra có điều kiện. Giả sử giá trị dưới cùng là 0 và giá trị cao nhất là 10, phương thức sẽ xuất ra như sau.
? = 0
? = 1
? = 2
? = 3
? = 4
? = 5
? = 6
? = 7
? = 8
? = 9
? = 8
? = 7
? = 6
? = 5
'+ 1' để cần giải pháp cho tổng số không có vấn đề, hoàn toàn làm cho mã của bạn đẹp hơn. Đây là lý do tại sao chúng ta học CoffeeScript. –