Issues (204)

examples/1.basic/3.extending.js (2 issues)

Labels
Severity
1
'use strict';
2
require('../../dist/joii.min.js');
3
4
/**
5
 * Here we take the example class from '2.constructor.js' and create a child
6
 * class for it which extends the functionality of this class.
7
 */
8
var MyClass = Class({
0 ignored issues
show
Class does not seem to be defined.
Loading history...
9
10
    some_number : 42,
11
12
    construct: function (number) {
13
        this.setSomeNumber(number);
14
    },
15
16
    /**
17
     * Adds the given number to 'some_number'.
18
     * @param number
19
     */
20
    add: function (number) {
21
        this.some_number += number;
22
    }
23
});
24
25
/**
26
 * This class extends on MyClass and adds a function to it that allows us to
27
 * subtract numbers from the value in the 'some_number' property.
28
 */
29
var AnotherClass = Class({ extends: MyClass }, {
0 ignored issues
show
Class does not seem to be defined.
Loading history...
30
31
    /**
32
     * Subtract the given number from 'some_number'.
33
     * @param number
34
     */
35
    sub: function(number) {
36
        this.some_number -= number;
37
    }
38
39
});
40
41
42
var a = new AnotherClass(10);
43
44
// Prints 10.
45
console.log(a.getSomeNumber());
46
47
// Subtract 2 and add 3.
48
a.sub(2);
49
a.add(3);
50
51
// Prints 11.
52
console.log(a.getSomeNumber());
53