diff options
Diffstat (limited to 'lists.js')
| -rw-r--r-- | lists.js | 22 |
1 files changed, 5 insertions, 17 deletions
@@ -61,7 +61,7 @@ PushButtonMorph, SyntaxElementMorph, Color, Point, WatcherMorph, StringMorph, SpriteMorph, ScrollFrameMorph, CellMorph, ArrowMorph, MenuMorph, snapEquals, Morph, isNil, localize, MorphicPreferences*/ -modules.lists = '2013-October-08'; +modules.lists = '2013-December-04'; var List; var ListWatcherMorph; @@ -209,30 +209,18 @@ List.prototype.at = function (index) { }; List.prototype.contains = function (element) { - var num = parseFloat(element); if (this.isLinked) { - if (this.first === element) { + if (snapEquals(this.first, element)) { return true; } - if (!isNaN(num)) { - if (parseFloat(this.first) === num) { - return true; - } - } if (this.rest instanceof List) { return this.rest.contains(element); } - return false; } // in case I'm arrayed - if (contains(this.contents, element)) { - return true; - } - if (!isNaN(num)) { - return (contains(this.contents, num)) - || contains(this.contents, num.toString()); - } - return false; + return this.contents.some(function (any) { + return snapEquals(any, element); + }); }; // List conversion: |
