pxt-calliope/olddocs/js/boolean.md
2016-04-15 14:37:25 -07:00

3.1 KiB

Boolean

true or false.

@parent js/language

A Boolean has one of two possible values: true; false. Boolean (logical) operators (and, or, not) take Boolean inputs and yields a Boolean value. Comparison operators on other types (numbers, strings) yields a Boolean value.

Block Editor

In the Block Editor, the following blocks represent the true and false Boolean values, which can be plugged in anywhere a Boolean value is expected:

The next three blocks represent the three Boolean (logic) operators:

The next six blocks represent comparison operators that yield a Boolean value. Most comparisons you will do involve numbers:

Touch Develop

~hide

let condition = true
let condition2 = true

~

Boolean values and operators are often used with an if or while statement to determine which code will execute next. For example:

if (condition && condition2) {
    // This code runs if both `condition` and `condition2` are `true`
} else {
    // This code runs if either `condition` or `condition2` is `false`
}

Functions that return a Boolean

Some functions return a Boolean value, which you can store in a Boolean variable. For example, the following code gets the on/off state of point (1, 2) and stores this in the Boolean variable named on. Then the code clears the screen if on is true:

let on = led.point(1, 2)
if (on) {
    basic.clearScreen()
}

Boolean operators

Boolean operators take Boolean inputs and evaluate to a Boolean output:

Conjunction: A and B

A and B evaluates to true if-and-only-if both A and B are true:

  • false and false = false

  • false and true = false

  • true and false = false

  • true and true = true

Disjunction: A or B

A or B evaluates to true if-and-only-if either A is true or B is true:

  • false or false = false

  • false or true = true

  • true or false = true

  • true or true = true

Negation: not A

not A evaluates to the opposite (negation) of A:

  • not false = true
  • not true = false

Example

This example turns on LED 3 , 3, if LEDs 1 , 1 and 2 , 2 are both on:

if (led.point(1, 1) && led.point(2, 2)) {
    led.plot(3, 3)
}

Comparisons of numbers and strings

When you compare two Numbers, you get a Boolean value, such as the comparison x < 5 in the code below:

let x = Math.random(10)
if (x < 5) {
    basic.showString("Low", 150)
} else {
    basic.showString("High", 150)
}

See the documentation on Numbers for more information on comparing two Numbers. You can also compare strings using the equals function.

Lessons

rotation animation, digi yoyo, love meter, zoomer

See also

if, while, number