pxt-calliope/docs/js/call.md

55 lines
1.7 KiB
Markdown
Raw Normal View History

2016-06-28 19:35:31 +02:00
# Call a function
The simplest way to get started in JavaScript with your micro:bit is to
call one of the micro:bit's built-in JavaScript functions. Just like Blocks
are organized into categories/drawers, the micro:bit functions are organized by
namespaces. The `basic` namespace contains a number of very helpful
functions:
```typescript
basic.showString("Hello!")
```
If you want to see all functions available in a namespace, simply type `basic`
followed by `.`; a list of all the functions will appear.
2016-06-30 19:10:15 +02:00
![](/static/mb/js/basicFuns.png)
2016-06-28 19:35:31 +02:00
2016-07-03 00:55:00 +02:00
We call this feature "Intellisense". Continue typing to select one of the functions,
or click on one of the functions to select. You also narrow down the set of functions by typing, as below:
2016-06-28 19:35:31 +02:00
![](/static/mb/js/basicIntell.png)
2016-07-03 00:55:00 +02:00
## Function parameter values
2016-06-28 19:35:31 +02:00
2016-07-03 00:55:00 +02:00
You might have noticed that the call `showString` above takes one parameter value,
2016-06-28 19:35:31 +02:00
the string to be scrolled on the LED screen. There is a second (optional)
2016-07-03 00:55:00 +02:00
parameter that controls the speed of the scroll. Try this:
2016-06-28 19:35:31 +02:00
```typescript
basic.showString("Hello!",50)
```
2016-07-03 00:55:00 +02:00
Intellisense shows all the available parameters for a function.
2016-07-02 16:18:39 +02:00
2016-07-03 00:27:58 +02:00
## Left and right parentheses, please!
Whenever you want to call a function, you give the name of the function
followed by `(` and ending with `)`. Inbetween the left and right
parentheses go the function arguments. If a function has zero arguments, you still
2016-07-03 00:55:00 +02:00
need the parentheses in order to call the function. For example
2016-07-03 00:27:58 +02:00
```typescript
basic.clearScreen()
```
2016-06-28 19:35:31 +02:00
2016-07-03 00:55:00 +02:00
It's a syntax error to have a left parenthesis without the "closing" right parenthesis:
```typescript
basic.clearScreen(
```
2016-07-02 16:18:39 +02:00
### ~button /js/sequence
NEXT: Sequencing Commands
### ~