diff --git a/staff/manuel-barzi/playground/arrays/Array.prototype.join.js b/staff/manuel-barzi/playground/arrays/Array.prototype.join.js new file mode 100644 index 00000000..1157c371 --- /dev/null +++ b/staff/manuel-barzi/playground/arrays/Array.prototype.join.js @@ -0,0 +1,15 @@ +console.log('TEST Array.prototype.join') + +console.log('CASE join elements') + +var elements = ['Fire', 'Air', 'Water', 'Earth'] +var joined = elements.join() +console.log(joined) +// 'Fire,Air,Water,Earth' + +console.log('CASE join elements with #') + +var elements = ['Fire', 'Air', 'Water', 'Earth'] +var joined = elements.join('#') +console.log(joined) +// 'Fire#Air#Water#Earth' \ No newline at end of file diff --git a/staff/manuel-barzi/playground/iterables/concat.1.js b/staff/manuel-barzi/playground/iterables/concat.1.js index ad49695a..74f8dcb4 100644 --- a/staff/manuel-barzi/playground/iterables/concat.1.js +++ b/staff/manuel-barzi/playground/iterables/concat.1.js @@ -35,7 +35,7 @@ var concat = function (iterable, iterable2) { return result } -console.log('TEST Array.prototype.concat') +console.log('TEST concat') console.log('CASE concat 2 iterables of characters') diff --git a/staff/manuel-barzi/playground/iterables/concat.2.js b/staff/manuel-barzi/playground/iterables/concat.2.js index 5593e3bc..b00a13eb 100644 --- a/staff/manuel-barzi/playground/iterables/concat.2.js +++ b/staff/manuel-barzi/playground/iterables/concat.2.js @@ -86,7 +86,7 @@ var concat = function (iterable, iterable2) { } } -console.log('TEST Array.prototype.concat') +console.log('TEST concat') console.log('CASE concat 2 iterables of characters') diff --git a/staff/manuel-barzi/playground/iterables/concat.3.js b/staff/manuel-barzi/playground/iterables/concat.3.js index fe366662..12f69f6a 100644 --- a/staff/manuel-barzi/playground/iterables/concat.3.js +++ b/staff/manuel-barzi/playground/iterables/concat.3.js @@ -149,7 +149,7 @@ var concat = function (iterable, iterable2) { } } -console.log('TEST Array.prototype.concat') +console.log('TEST concat') console.log('CASE concat 2 iterables of characters') diff --git a/staff/manuel-barzi/playground/iterables/concat.4.js b/staff/manuel-barzi/playground/iterables/concat.4.js index 5490803a..1ac53579 100644 --- a/staff/manuel-barzi/playground/iterables/concat.4.js +++ b/staff/manuel-barzi/playground/iterables/concat.4.js @@ -142,7 +142,7 @@ var concat = function (iterable, iterable2) { } } -console.log('TEST Array.prototype.concat') +console.log('TEST concat') console.log('CASE concat 2 iterables of characters') diff --git a/staff/manuel-barzi/playground/iterables/concat.5.js b/staff/manuel-barzi/playground/iterables/concat.5.js index 043a60c9..b0d45287 100644 --- a/staff/manuel-barzi/playground/iterables/concat.5.js +++ b/staff/manuel-barzi/playground/iterables/concat.5.js @@ -128,7 +128,7 @@ var concat = function (iterable, iterable2) { } } -console.log('TEST Array.prototype.concat') +console.log('TEST concat') console.log('CASE concat 2 iterables of characters') diff --git a/staff/manuel-barzi/playground/iterables/concat.js b/staff/manuel-barzi/playground/iterables/concat.js index 71e68c57..1b6ce6d3 100644 --- a/staff/manuel-barzi/playground/iterables/concat.js +++ b/staff/manuel-barzi/playground/iterables/concat.js @@ -15,7 +15,7 @@ var concat = function () { return result } -console.log('TEST Array.prototype.concat') +console.log('TEST concat') console.log('CASE concat 2 iterables of characters') diff --git a/staff/manuel-barzi/playground/iterables/join.1.js b/staff/manuel-barzi/playground/iterables/join.1.js new file mode 100644 index 00000000..4d8bb1bc --- /dev/null +++ b/staff/manuel-barzi/playground/iterables/join.1.js @@ -0,0 +1,36 @@ +var join = function (iterable) { + /* + iterable -> { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } + + result -> '' + + result -> 'Fire' + result -> 'Fire,Air' + result -> 'Fire,Air,Water' + result -> 'Fire,Air,Water,Earth' + + return result + */ + + var result = '' + + for (var i = 0; i < iterable.length; i++) { + var element = iterable[i] + + if (i === 0) + result += element // result = result + element + else + result += ',' + element // result = result + ',' + element + } + + return result +} + +console.log('TEST join') + +console.log('CASE join elements') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements) +console.log(joined) +// 'Fire,Air,Water,Earth' \ No newline at end of file diff --git a/staff/manuel-barzi/playground/iterables/join.2.js b/staff/manuel-barzi/playground/iterables/join.2.js new file mode 100644 index 00000000..d8e4d0f8 --- /dev/null +++ b/staff/manuel-barzi/playground/iterables/join.2.js @@ -0,0 +1,36 @@ +var join = function (iterable) { + /* + iterable -> { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } + + result -> '' + + result -> 'Fire' + result -> 'Fire,Air' + result -> 'Fire,Air,Water' + result -> 'Fire,Air,Water,Earth' + + return result + */ + + var result + + for (var i = 0; i < iterable.length; i++) { + var element = iterable[i] + + if (i === 0) + result = element // result = result + element + else + result += ',' + element // result = result + ',' + element + } + + return result +} + +console.log('TEST join') + +console.log('CASE join elements') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements) +console.log(joined) +// 'Fire,Air,Water,Earth' \ No newline at end of file diff --git a/staff/manuel-barzi/playground/iterables/join.3.js b/staff/manuel-barzi/playground/iterables/join.3.js new file mode 100644 index 00000000..9671179a --- /dev/null +++ b/staff/manuel-barzi/playground/iterables/join.3.js @@ -0,0 +1,33 @@ +var join = function (iterable) { + /* + iterable -> { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } + + result -> '' + + result -> 'Fire' + result -> 'Fire,Air' + result -> 'Fire,Air,Water' + result -> 'Fire,Air,Water,Earth' + + return result + */ + + var result + + for (var i = 0; i < iterable.length; i++) { + var element = iterable[i] + + i === 0 ? result = element : result += ',' + element + } + + return result +} + +console.log('TEST join') + +console.log('CASE join elements') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements) +console.log(joined) +// 'Fire,Air,Water,Earth' \ No newline at end of file diff --git a/staff/manuel-barzi/playground/iterables/join.4.js b/staff/manuel-barzi/playground/iterables/join.4.js new file mode 100644 index 00000000..c4ecf5f3 --- /dev/null +++ b/staff/manuel-barzi/playground/iterables/join.4.js @@ -0,0 +1,33 @@ +var join = function (iterable) { + /* + iterable -> { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } + + result -> '' + + result -> 'Fire' + result -> 'Fire,Air' + result -> 'Fire,Air,Water' + result -> 'Fire,Air,Water,Earth' + + return result + */ + + var result = '' + + for (var i = 0; i < iterable.length; i++) { + var element = iterable[i] + + result += i === 0 ? element : ',' + element + } + + return result +} + +console.log('TEST join') + +console.log('CASE join elements') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements) +console.log(joined) +// 'Fire,Air,Water,Earth' \ No newline at end of file diff --git a/staff/manuel-barzi/playground/iterables/join.5.js b/staff/manuel-barzi/playground/iterables/join.5.js new file mode 100644 index 00000000..dc687ddb --- /dev/null +++ b/staff/manuel-barzi/playground/iterables/join.5.js @@ -0,0 +1,33 @@ +var join = function (iterable) { + /* + iterable -> { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } + + result -> '' + + result -> 'Fire' + result -> 'Fire,Air' + result -> 'Fire,Air,Water' + result -> 'Fire,Air,Water,Earth' + + return result + */ + + var result = '' + + for (var i = 0; i < iterable.length; i++) { + var element = iterable[i] + + result += (i === 0 ? '' : ',') + element + } + + return result +} + +console.log('TEST join') + +console.log('CASE join elements') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements) +console.log(joined) +// 'Fire,Air,Water,Earth' \ No newline at end of file diff --git a/staff/manuel-barzi/playground/iterables/join.6.js b/staff/manuel-barzi/playground/iterables/join.6.js new file mode 100644 index 00000000..d8e4d0f8 --- /dev/null +++ b/staff/manuel-barzi/playground/iterables/join.6.js @@ -0,0 +1,36 @@ +var join = function (iterable) { + /* + iterable -> { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } + + result -> '' + + result -> 'Fire' + result -> 'Fire,Air' + result -> 'Fire,Air,Water' + result -> 'Fire,Air,Water,Earth' + + return result + */ + + var result + + for (var i = 0; i < iterable.length; i++) { + var element = iterable[i] + + if (i === 0) + result = element // result = result + element + else + result += ',' + element // result = result + ',' + element + } + + return result +} + +console.log('TEST join') + +console.log('CASE join elements') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements) +console.log(joined) +// 'Fire,Air,Water,Earth' \ No newline at end of file diff --git a/staff/manuel-barzi/playground/iterables/join.7.js b/staff/manuel-barzi/playground/iterables/join.7.js new file mode 100644 index 00000000..7dcf42b4 --- /dev/null +++ b/staff/manuel-barzi/playground/iterables/join.7.js @@ -0,0 +1,58 @@ +var join = function (iterable, separator) { + /* + iterable -> { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } + + result -> '' + + result -> 'Fire' + result -> 'Fire,Air' + result -> 'Fire,Air,Water' + result -> 'Fire,Air,Water,Earth' + + return result + */ + + if (separator === undefined) { + var result + + for (var i = 0; i < iterable.length; i++) { + var element = iterable[i] + + if (i === 0) + result = element // result = result + element + else + result += ',' + element // result = result + ',' + element + } + + return result + } else { + var result + + for (var i = 0; i < iterable.length; i++) { + var element = iterable[i] + + if (i === 0) + result = element // result = result + element + else + result += separator + element // result = result + separator + element + } + + return result + } +} + +console.log('TEST join') + +console.log('CASE join elements') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements) +console.log(joined) +// 'Fire,Air,Water,Earth' + +console.log('CASE join elements with #') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements, '#') +console.log(joined) +// 'Fire#Air#Water#Earth' \ No newline at end of file diff --git a/staff/manuel-barzi/playground/iterables/join.8.js b/staff/manuel-barzi/playground/iterables/join.8.js new file mode 100644 index 00000000..0610aa90 --- /dev/null +++ b/staff/manuel-barzi/playground/iterables/join.8.js @@ -0,0 +1,43 @@ +var join = function (iterable, separator) { + /* + iterable -> { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } + + result -> '' + + result -> 'Fire' + result -> 'Fire,Air' + result -> 'Fire,Air,Water' + result -> 'Fire,Air,Water,Earth' + + return result + */ + + var result + + for (var i = 0; i < iterable.length; i++) { + var element = iterable[i] + + if (i === 0) + result = element // result = result + element + else + result += (separator === undefined ? ',' : separator) + element // result = result + separator + element + } + + return result +} + +console.log('TEST join') + +console.log('CASE join elements') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements) +console.log(joined) +// 'Fire,Air,Water,Earth' + +console.log('CASE join elements with #') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements, '#') +console.log(joined) +// 'Fire#Air#Water#Earth' \ No newline at end of file diff --git a/staff/manuel-barzi/playground/iterables/join.9.js b/staff/manuel-barzi/playground/iterables/join.9.js new file mode 100644 index 00000000..28297889 --- /dev/null +++ b/staff/manuel-barzi/playground/iterables/join.9.js @@ -0,0 +1,44 @@ +var join = function (iterable, separator) { + /* + iterable -> { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } + + result -> '' + + result -> 'Fire' + result -> 'Fire,Air' + result -> 'Fire,Air,Water' + result -> 'Fire,Air,Water,Earth' + + return result + */ + + var result + var separator2 = separator === undefined ? ',' : separator + + for (var i = 0; i < iterable.length; i++) { + var element = iterable[i] + + if (i === 0) + result = element // result = result + element + else + result += separator2 + element // result = result + separator + element + } + + return result +} + +console.log('TEST join') + +console.log('CASE join elements') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements) +console.log(joined) +// 'Fire,Air,Water,Earth' + +console.log('CASE join elements with #') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements, '#') +console.log(joined) +// 'Fire#Air#Water#Earth' \ No newline at end of file diff --git a/staff/manuel-barzi/playground/iterables/join.js b/staff/manuel-barzi/playground/iterables/join.js new file mode 100644 index 00000000..22e26888 --- /dev/null +++ b/staff/manuel-barzi/playground/iterables/join.js @@ -0,0 +1,42 @@ +var join = function (iterable, separator) { + /* + iterable -> { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } + + result -> '' + + result -> 'Fire' + result -> 'Fire,Air' + result -> 'Fire,Air,Water' + result -> 'Fire,Air,Water,Earth' + + return result + */ + + var result = iterable.length === 0 ? '' : iterable[0] + //var result = iterable.length > 0? iterable[0] : '' + var separator2 = separator === undefined ? ',' : separator + + for (var i = 1; i < iterable.length; i++) { + var element = iterable[i] + + result += separator2 + element // result = result + separator + element + } + + return result +} + +console.log('TEST join') + +console.log('CASE join elements') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements) +console.log(joined) +// 'Fire,Air,Water,Earth' + +console.log('CASE join elements with #') + +var elements = { 0: 'Fire', 1: 'Air', 2: 'Water', 3: 'Earth', length: 4 } +var joined = join(elements, '#') +console.log(joined) +// 'Fire#Air#Water#Earth' \ No newline at end of file