質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CoffeeScript

CoffeeScriptはプログラミング言語です。シンタックスシュガーの導入により、JavaScriptのコードに変換された後動作します。JavaScriptに比べ、可読性と簡潔性が向上しています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

1051閲覧

Javascriptのエラーに関して

A28Rh

総合スコア18

CoffeeScript

CoffeeScriptはプログラミング言語です。シンタックスシュガーの導入により、JavaScriptのコードに変換された後動作します。JavaScriptに比べ、可読性と簡潔性が向上しています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2015/10/17 08:09

coffeescriptでじゃんけんゲームを作っていますが、下記コードで "unexpected indentation" と表示されどこが原因なのかわからず困っています。お分かりの方がいれば教えて下さいm(__)m

judgeJanken: (hand, rival) ->
if hand is rival
#(hand is 0 and rival is 0) or (hand is 1 and rival is 1) or (hand is 2 and rival is 2)
$('.answer02').text 'あいこ もう一回'
else if (hand + 1 is rival) or (hand is 2 and rival is 0)
#(hand is 0 and rival is 1) or (hand is 1 and rival is 2) or (hand is 2 and rival is 3)
$('.answer02').text '勝ち'
@my_lifepoint--
#@rival_lifepoint.pop()
if @rival_lifepoint is 2
$('.rival_lifepoint03 img').attr 'src', 'image/heart_black.png'
else if @rival_lifepoint is 1
$('.rival_lifepoint02 img').attr 'src', 'image_heart_black.png'
else if @rival_lifepoint is 0
$('.rival_lifepoint01 img').attr 'src', 'image_heart_black.png'
alert 'YOU ARE WIN'
else
$('.answer02').text '負け'
@my_lifepoint--
#@my_lifepoint.pop()
if @my_lifepoint is 2
$('.my_lifepoint03 img').attr 'src', 'image/heart_black.png'
else if @my_lifepoint is 1
$('.my_lifepoint02 img').attr 'src', 'image_heart_black.png'
else if @my_lifepoint is 0
$('.my_lifepoint01 img').attr 'src', 'image_heart_black.png'

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

こういうのはエディタに構文チェックのプラグインなど(linter)入れておけば楽ですよ。
2行目からインデントが1段ずれてますよ。

・コピーした時ホワイトスペースが末尾に入っていたのですが、これは貼り付けた時の問題ですかね。もしソースに入っているならそれもエラーになるので削除お願いします。
ソース貼り付けるときは</> マークのボタンでソースのエリア追加してからその中に貼り付けた方がわかりやすいです。

あと気になるところは
「$('.answer02').text '勝ち'」の次の行
「@my_lifepoint」 ではなく「@rival_lifepoint」が正解のような気がします。

以下の変数の初期化必要だと思うのですがこのコードは全体ではなくコードの一部ということですかね。
@my_lifepoint
@rival_lifepoint

cofeeは全然詳しくないので他にもなにかあるかもしれませんが(^_^;)
確認よろしくお願いします。

judgeJanken: (hand, rival) -> if hand is rival $('.answer02').text 'あいこ もう一回' else if (hand + 1 is rival) or (hand is 2 and rival is 0) $('.answer02').text '勝ち' @my_lifepoint-- #@rival_lifepoint.pop() if @rival_lifepoint is 2 $('.rival_lifepoint03 img').attr 'src', 'image/heart_black.png' else if @rival_lifepoint is 1 $('.rival_lifepoint02 img').attr 'src', 'image_heart_black.png' else if @rival_lifepoint is 0 $('.rival_lifepoint01 img').attr 'src', 'image_heart_black.png' alert 'YOU ARE WIN' else $('.answer02').text '負け' @my_lifepoint-- #@my_lifepoint.pop() if @my_lifepoint is 2 $('.my_lifepoint03 img').attr 'src', 'image/heart_black.png' else if @my_lifepoint is 1 $('.my_lifepoint02 img').attr 'src', 'image_heart_black.png' else if @my_lifepoint is 0 $('.my_lifepoint01 img').attr 'src', 'image_heart_black.png'

投稿2015/10/17 15:29

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

お悩みのエラーは、JavaScriptで見たことがないので、
またネットを検索して見る限り、JavaScriptではなくCoffeeScriptで出ているようです。

そして、ここによれば、
文法ではなくインデントの不正によって出ているのかもしれないです。

投稿2015/10/17 14:39

TetsujiMiwa

総合スコア1124

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問