-
Notifications
You must be signed in to change notification settings - Fork 31
Expand file tree
/
Copy pathclassnote.js
More file actions
85 lines (66 loc) · 1.52 KB
/
Copy pathclassnote.js
File metadata and controls
85 lines (66 loc) · 1.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
// insert a break point for you
debugger
// in chrome open cosnole enter i
// you can control it in the sources window
//console log arguments
var sum = function (num, num2){
console.log(arguments)
return num+num2
}
//doesn't work
var addOne = function (num) {return num+ 1}
addOne (1)(2)
//does work
var returnAddFunction = function(num1) {
var theFunction = function (num2){
return num1+num2
}
return theFunction
}
returnAddFunction(5)(2)
var add5 = returnAddFunction(5)
add5(2)
// using f map
var fmap= function(arr,func){
var holder = [];
for(i = 0; i<arr.length; i++){
holder.push(func(arr[i]))
}
return holder
}
var timestwo = function (num) {return 2*num}
fmap([1,2,3,4,5],timestwo)
//********** filtering using f map logic
mylist = [1,2,3]
holder =[]
for (i=0; i < mylist.length; i++){
if(mylist[i]%2==0){
holder.push(mylist[i])
}
}
//returns 2
holder
//but rather
var isEven = function (num){
return num % 2 == 0
}
// returns true / false
isEven(3)
var filter = function (arr, pred){
var holder = [];
for (var i = 0; i < arr.length ; i++){
//pred function will measure whether the condition is satisfied
if (pred (arr[i])){holder.push(arr[i])}
}
return holder
}
filter (mylist, isEven)
//
[5]==[5] // it will return false
5 == 5 // it will return true
// inline function return 4
(function(){return 4})()
//
_.each([1,2,3],alert);
_.map([1,2,3],alert)
// underscorejs.org