# If Run code based on a condition. ### @parent js/language Conditionally run code depending on whether a [Boolean](/reference/types/boolean) condition is true or false. ### Block Editor In the Block Editor, click on the dark blue gear icon (see above) to add an *else* or *if* to the current block. ### Touch Develop ### ~hide ``` let condition = true ``` ### ~ ``` if (condition) { // this code runs if `condition` is `true` } else { // this code runs if `condition` is `false` } ``` ### Example: adjusting screen brightness If the screen [brightness](/reference/led/brightness) is `< 100`, this code sets the brightness to `255`: ``` if (led.brightness() < 100) { led.setBrightness(255) } ``` You can leave the `then` or `else` blocks empty if they aren't needed. ### Else if: multiple if statements You can chain together if statements by using `else if`. Like this: ### ~hide ``` let otherCondition = true ``` ### ~ ``` if (condition) { // this code runs if `condition` is `true` } else if (otherCondition) { // this code runs if `other condition` is `true` } else { // this code runs if neither `condition` or `other condition` are `true` } ``` ### Example: compass heading The following example gets the [compass heading](/reference/input/compass-heading) and then uses ``if-then-else`` statements to display a letter on the screen (N for north, E for East, S for South, and W for West). ``` while (true) { let degrees = input.compassHeading() if (degrees < 45) { basic.showString("N", 100) } else if (degrees < 135) { basic.showString("E", 100) } else if (degrees < 225) { basic.showString("S", 100) } else { basic.showString("W", 100) } } ``` ### Drag and drop You can move an entire ``if`` block by clicking the ``if`` keyword and dragging and dropping. ### Lessons [love meter](/lessons/love-meter), [zoomer](/lessons/zoomer), [offset image](/lessons/offset-image) ### See also [while loop](/js/while), [for](/reference/loops/for), [boolean](/reference/types/boolean)