mameblock.js
mameblock.js copied to clipboard
turtle demo:先頭のコメントブロック削除
奈良さんからのバグレポート。
ひとつだけ、気になったことがあるので、連絡させていただきます。
タートルグラフィックス版の mameBlock のプログラムですが、 オンライン版も、ダウンロード版も、1行目のコメントブロックを 削除すると
TypeError: Unable to set property 'x' of undefined or null reference
というエラーになるようです。 いろいろ試したところ、どうも、1行目は無視されてしまうようです。 ですから、コメントを削除すると new turtle の命令が実行されなくなる ようです。
そこで、html ファイルの
// pen layer
// Start turtle code - recode turtle moving. -------------------------------------
の部分を
/* / pen layer
// Start turtle code - recode turtle moving. -------------------------------------*/
のように直したら、正常動作するようになりました。
どうやら、<pre>...</pre>
の中に書いた JavaScript を評価する時に
改行は無視されてしまうようです。
このため、ブロックから翻訳された JavaScript のプログラムの1行目が
コメントに食われてしまうようです。
どうやら、
<pre>...</pre>
の中に書いた JavaScript を評価する時に 改行は無視されてしまうようです。 このため、ブロックから翻訳された JavaScript のプログラムの1行目が コメントに食われてしまうようです。
さらに調べてみました。改行が無視されるのは、末尾だけのようです。
var codeText = code1 + code2 + code3;alert(codeText);
のように、alert を入れたところ、
p.setup = function() {
p.createCanvas(480, 360);
p.background(200);
p.fill(255);
tPlane = p.createGraphics(p.width, p.height); // pen layer
// Start turtle code - recode turtle moving. -------------------------------------/** Turtle Graphics */
turtle = new p.Turtle();
turtle.x = 140;
のような alert 表示になりました。