人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

javascriptで、配列に入れた文字に( )が含まれています。( )の部分をそっくり削除したいのですが、
下記の方法を試したところspeaktagは、ちゃんと神奈川県となるのですが、
( )が入っていない文字列の場合は、なぜか,speaktagの中身がすべて空欄になってしまいます。
なぜなのでしょうか?

例)
kotae ="神奈川県(川崎市)"
speaktag =kotae.substring(0,kotae.indexOf("("));


●質問者: kajironpu
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● pogpi

kotae.indexOf("("))で、-1が返っているせいだと思います。
「-1」が返ったら、トリムしないようにすれば大丈夫でしょう。


kajironpuさんのコメント
ありがとうございます。 具体的には、if文を入れる形でしょうか? if (kotae = -1) { //トリムしない } ↑のトリムしないところはどういう方法がありますか?

pogpiさんのコメント
indexOfを先に見て、「(」があれば、 kotae.indexOf("(")) > -1 ですね。if文の括弧内は上記ですよね。 speaktag =kotae.substring(0,kotae.indexOf("(")); を、そのif文でくくればいいだけです。

kajironpuさんのコメント
なるほどー ありがとうございます!
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ