Here are the differences between the ProcessingJS reference and what we support:
- We do not support the Java-like syntax changes to JS, like void, class, extends, and super.
- We use degrees by default for all angle parameters, instead of radians. Use angleMode to change to radians.
- We use mouseIsPressed instead of
mousePressedfor the boolean because it is less confusing to have both a function and a boolean with the same name. Similarly, we use keyIsPressed instead of
- We only support loading officially supported images and sounds via getImage() and getSound(), for moderation reasons.
- We do not support all PImage manipulation functionality, for performance reasons.
- We do not support all commands that are not specifically mentioned in the Documentation.
As long as a ProcessingJS Reference command is not among the forbidden ones for moderation reasons or performance reasons and it works, you can use it on Khan Academy. However, if a ProcessingJS Reference command does not work or works erratically, we do not consider it a bug unless it is specifically mentioned in the Documentation.
Click here to see the documentation of the supported ProcessingJS items. You can also find this documentation available in one of the tabs below the programs you work on.