var obj = { foo: "foo", bar: "bar", getFoo: function () { return this.foo; }, getBar: function (arg) { return arg + " " + this.bar; }, getZoo: function (a, b) { return this.foo + " " + this.bar + " " + a + " " + b; } }; var foo = obj:getFoo; assert.equal(foo(), "foo"); var bar = obj:getBar("foo"); assert.equal(bar(), "foo bar"); var zoo = obj:getZoo("foo"); assert.equal(zoo("bar"), "foo bar foo bar"); assert.deepEqual(["foo", "bar"].map(:toUpperCase), ["FOO", "BAR"]); assert.deepEqual([1.1234, 23.53245, 3].map(:toFixed(2)), ["1.12", "23.53", "3.00"]); var get = function () { return 2; } assert.deepEqual([1.1234, 23.53245, 3].map(:toFixed(get())), ["1.12", "23.53", "3.00"]);