aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHolden Rohrer <holden.rohrer@gmail.com>2019-12-18 15:58:38 -0500
committerHolden Rohrer <holden.rohrer@gmail.com>2019-12-18 15:58:38 -0500
commit27edad92c3af494c24b0bddb052a5182e974027e (patch)
tree4dac30c2e218ef4e9ac8fdfa214a0f9f0aed964a
parent2d1481ce953a869b129bf2c98d7c084d7180f8a3 (diff)
tested and fixed space.subsection
-rw-r--r--space.js10
-rw-r--r--tests/space_subsection.js10
2 files changed, 18 insertions, 2 deletions
diff --git a/space.js b/space.js
index 638734f..912768b 100644
--- a/space.js
+++ b/space.js
@@ -110,9 +110,15 @@ function Space(){ // CLASS
}
this.subsection = function(range){ // range is a standard quadruplet
newspace = new Space();
- for (let line=0; line<range[2]-range[0]; line++) for (let chr=0; chr<range[3]-range[1]; chr++){
- newspace.data[line][chr] = this.data[line+range[0]][line+range[1]] || '';
+ for (let line=0; line<=range[2]-range[0]; line++){
+ newspace.data.push([]);
+ for (let chr=0; chr<=range[3]-range[1]; chr++){
+ newspace.data[line].push(
+ this.data[line+range[0]][chr+range[1]] || ''
+ );
+ }
}
+ return newspace;
}
}
diff --git a/tests/space_subsection.js b/tests/space_subsection.js
new file mode 100644
index 0000000..a2523e5
--- /dev/null
+++ b/tests/space_subsection.js
@@ -0,0 +1,10 @@
+// Tests Space.subsection()
+const space = require('../space');
+
+newspace = new space.Space();
+newspace.adhoc('\
+line\n\
+\n\
+long long long line\
+');
+console.log(newspace.subsection([1,1,2,10]));