node-ardx
Version:
Exercises for exploring the Arduino Experimenter's kit using johnny-five
137 lines (87 loc) • 3.04 kB
Markdown
No previous coding experience is required to work through the exercises in this guide. This primer summarises some of the basics of the JavaScript language that we will use to program our NodeBots.
See the [MDN JavaScript Reference](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference) and <a href="https://github.com/rwaldron/johnny-five">Johnny-Five</a> docs for more detail.
var myVar;
Use the comma operator to declare multiple variables in a single declaration e.g.
var x, y;
var myVar = 0;
var myInt = 0;
var myFloat = 2.5;
var myBoolean = true;
var myString = "This is a string";
var myArray = [1,2,3];
var myJSONObject = {
myField : "Some value"
};
// Object instantiation using new
var myDate = new Date();
Numeric operators include + (addition) - (subtraction) / (division) * (multiplication) % (modulo)
var x = 4;
x = x + 1; // x is 5
y = x % 2; // y is 1
x++; // x is 6
x--; // x is 5
x += 3; // x is 8
var aString = "The value of x is " + x;
The `this` operator refers to the current execution context
The `typeof` operator returns the type
typeof aString; // returns "string"
Math.floor(myInt);
Math.ceil(myInt);
Math.min(x, y);
Math.random(); // random number between 0 and up to but not equal to 1
Math.PI;
// Comment until the end of the line
/*
* Comment block
*/
console.log("Hello World");
Use comparison operators < (less than) > (greater than) <= (less than or equal) >= (greater than or equal) == (equals) != (not equals)
if (x > 0) {
// do something
} else {
// do something else
}
The conditional operator provides an inline shorthand: `(condition? expressionWhenTrue : expressionWhenFalse )` e.g.
var myString = "I have " + (x == 1 ? x + "thing" : x + "things");
for (var i = 0; i < myArray.length; i++) {
console.log(myArray[i]);
}
while (x < 10) {
console.log(x++);
}
function myIncrementFunction (x) {
return x + 1;
}
myIncrementFunction(1000);
Functions defined as part of an Object are known as methods, and can be called as follows:
myDate.getFullYear();
try {
// try to do something
} catch (e) {
// handle errors
} finally {
// this block is executed regardless of whether there was an exception
}
Include a library in a node.js program
var five = require("johnny-five");
var myLib = require("some-other-lib");
Use `on` to attach a callback function that will be executed whenever the event occurs:
var myBoard = new five.Board();
myBoard.on("ready", function() {
// code to be executed when the board is ready
});