WoW attack speed calculation [closed]

Why was that formula used?

It ensures the result is sensible in all situations, no matter how large your attack speed bonus becomes, and without requiring a cap on possible attack speed bonus.

Consider your proposed formula - "current attack speed" - ("current attack speed" * ("attack speed bonus" / 100)) - with an attack speed bonus of 100% (credit to Studoku in the comments):

1.8 - (1.8 * (100 / 100)) = 1.8 - (1.8 * 1) = 1.8 - 1.8 = 0

What would an attack speed of 0 mean in practical terms? How many times per second would you expect to be attacking with that attack speed?

You get a similar issue with any bonus exceeding 100%, where your attack speed is now negative. What would that mean?

Why is the + 1 included?

It avoids incorrect - or even unknown - results in certain situations (i.e. with specific attack speed increases). Consider the following two examples without the + 1 in the formula used.

Attack speed bonus of 0%:

1.8 / (0 / 100) = 1.8 / 0 = ???

Attack speed bonus of 100%:

1.8 / (100 / 100) = 1.8 / 1 = 1.8