Skip to content

Instantly share code, notes, and snippets.

@skusunam
Created June 3, 2012 04:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save skusunam/2861801 to your computer and use it in GitHub Desktop.
Save skusunam/2861801 to your computer and use it in GitHub Desktop.
Loops and Comprehensions
#1)
for name in ["Roger", "Roderick", "Brian"]
alert "Release #{name}"
#2) if you need the current iteration index
for name, i in ["Roger the pickpocket", "Roderick the robber"]
alert "#{i} - Release #{name}"
#3) iterate on one line using the postfix form
release prisoner for prisoner in ["Roger", "Roderick", "Brian"]
#4) using comprehensions to filter items
prisoners = ["Roger", "Roderick", "Brian"]
release prisoner for prisoner in prisoners when prisoner[0] is "R"
#5) using comprehensions to iterate over properties of objects, use "of" instead of "in"
names = sam: seaborn, donna: moss
alert "#{first} #{last}" for first, last of names
//1)
var name, _i, _len, _ref;
_ref = ["Roger", "Roderick", "Brian"];
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
name = _ref[_i];
alert("Release " + name);
}
//2) if you need the current iteration index
var i, name, _len, _ref;
_ref = ["Roger the pickpocket", "Roderick the robber"];
for (i = 0, _len = _ref.length; i < _len; i++) {
name = _ref[i];
alert("" + i + " - Release " + name);
}
//3) iterate on one line using the postfix form
var prisoner, _i, _len, _ref;
_ref = ["Roger", "Roderick", "Brian"];
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
prisoner = _ref[_i];
release(prisoner);
}
#4) using comprehensions to filter items
var prisoner, prisoners, _i, _len;
prisoners = ["Roger", "Roderick", "Brian"];
for (_i = 0, _len = prisoners.length; _i < _len; _i++) {
prisoner = prisoners[_i];
if (prisoner[0] === "R") {
release(prisoner);
}
}
#5) using comprehensions to iterate over properties of objects, use "of" instead of "in"
var first, last, names;
names = {
sam: seaborn,
donna: moss
};
for (first in names) {
last = names[first];
alert("" + first + " " + last);
}
num = 6
minstrel = while num -= 1
num + " Brave Sir Robin ran away"
var minstrel, num;
num = 6;
minstrel = (function() {
var _results;
_results = [];
while (num -= 1) {
_results.push(num + " Brave Sir Robin ran away");
}
return _results;
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment