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

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

ただいまの
回答率

87.37%

JS ES2015仕様だけでいけるのか?

解決済

回答 3

投稿

  • 評価
  • クリップ 1
  • VIEW 469

score 10

初心者です。
JavaScriptを勉強しています。
今(2019年9月)のタイミングだと、ES2015の仕様に関わるものは積極的に使っていってよいものでしょうか?
例えば変数の宣言をletかconstだけでした場合、なにか不都合は起きますか?
また、クラスを扱う場合には、class構文によるものだけを使えば、それ以前の方法は特に覚えなくても良いものでしょうか?
(一応ひと通りは学習しました)
幅広いご意見を頂けたらと思います。
よろしくお願いします。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

checkベストアンサー

+6

ES2015の仕様に関わるものは積極的に使っていってよいものでしょうか?

JavaScriptを使う環境によります。

  • Node.jsやモバイルブラウザなどが前提の場合→ES2015の範囲内であれば概ね対応しています。
  • IE11(それ以前も含む)をサポートする必要がある場合→IE11でもES2015は一部対応(Arrow Functionやclassに非対応)なので、BabelでコンパイルするかES5で書く必要があります。
  • Google Apps Script→ES5レベルです。
  • Windows Scripting Host→ES3相当です。使うこと自体を回避したほうがいいかもしれません。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/09/27 09:22

    お返事ありがとうございます。
    Google Apps Scriptなどについて調べてみます。

    キャンセル

  • 2019/09/27 09:24

    > Google Apps Scriptなどについて調べてみます。

    いえ、使わないなら使わないで大丈夫です(Google Apps Scriptは、Googleスプレッドシートなどのマクロ環境です)。

    キャンセル

  • 2019/09/27 15:14

    maisumakun様

    知らないくらいですから・・・
    今のところ使う予定はありません。

    お返事ありがとうございました。

    キャンセル

+1

BabelとかWebpackとか使う前提なら、開発ではES6積極的に使ったらいいと思う。

JSだけ書くので完結したいなら、対応するブラウザ次第だね。IE11だとconst使えるけどPromise使えないとか・・・極論すれば「IE11だと動かない」が困るかどうか。
そのへん面倒だから「Chromeだけ対応してます!」ってやる人も多くて、それはそれで問題になったりしてたりw
can i useという神サイトで、それぞれの構文がどのブラウザで対応できるか見れるよ。

個人的には前者の方がオススメなんだけど、ちょっと書くのにpackage.jsonがーnode_modulesがーwebpack.config.jsがーとかは正直めんどいけどね。

結論を最後にするクソ文で申し訳ないが、「今すぐちょっと作りたいだけならES5だけで完結した方が安全」「これからしばらくJSで仕事したいならツールセット使ってES6以降を積極的に」がいいと思うな。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/09/27 14:19

    軽口の一つだったので流してくれてよいがw言った手前説明すると、いろいろとあるんだけど、一番大きいのは実は開発者の「意識」の問題だって言う話があるっすね~。「説教うっさいわ!」で終わる話しっつったらそうなんだけどw

    明確にポリシーがあって「Chromeのみ対応」ならそれはそれでいいんだが、「Chromeで動かしながら適当に作ったよ?MDN?W3C?なにそれ動きゃよくね?Chromeでしか見てないけどw」ってのはWeb開発者として間違っとるよね、という話ですな。

    SW開発って仕様みてちゃんと設計するよね?↑の人がやってるのは、特定のSWの特定のVerでしか動かないなにかを作ってるだけで、それって設計と言える?っていう怒りがこもってるみたい。

    また話変わるけど、EdgeがChromiumになるのも、「楽になるから歓迎!」って人と「ブラウザの多様性が失われてGoogleの独壇場になるのはIEの再来になりかねん」と警戒する人といるってのも「問題」の一ファクタとしてあるっすね~

    まあ、無視してもいいと思うっすよ。世界なんてキレイにならないんだから、それなら自分の温度感を優先した方がいいと俺は思うし。でも未来を憂う意識の高い方もおるっつーことで。

    キャンセル

  • 2019/09/27 14:20

    意識の話ってのは、どっかのエライWeb開発の人のTwitterだかブログだかで見たんだけど、どこか忘れちゃった!スマン!

    キャンセル

  • 2019/09/27 15:03

    jjj_aaa様

    軽く流して良さそうなお話と感じました。
    お返事ありがとうございました。

    キャンセル

0

ES2015(ES6)のブラウザ対応状況はこちらをご覧ください。
平均すると95%程度の実装率です。
他の方の回答にもありますがターゲットによります。
幅広いターゲットを持つならES5等を使うこと考えた方がいいかと。
最近の若い世代やスマホからのアクセスを期待するならES6使っても問題ないと思います。
特に、日本ではiOS端末の割合が顕著に高いのでスマホターゲットだったら使ってしまって問題ないと思います。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/09/27 09:53

    中括弧の中で別な変数は宣言せずに「b=100;」「b=200;」だけですね>書き直しのパターン

    キャンセル

  • 2019/09/27 09:55

    ご指摘いただきありがとうございます。
    回答修正させていただきます。

    キャンセル

  • 2019/09/27 15:24

    asuchi0819様

    Can I use? は見たことがありました。
    95%であれば、ES2015で書いていて、問題があるようなら考える。
    という方針でいこうかなぁと思っています。

    お返事ありがとうございました。

    キャンセル

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

  • ただいまの回答率 87.37%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る