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

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

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

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

Q&A

解決済

2回答

354閲覧

JS screen.width+innerHTML

tyrwe

総合スコア4

JavaScript

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

0グッド

0クリップ

投稿2023/02/24 04:45

編集2023/02/24 04:55

スマホかブラウザかで記述内容の適応を変えるとして

<div id="a"></div> <script> window.onload=function(){ if(screen.width>=pxを指定して判別){ a.innerHTML="PC"; }else{ a.innerHTML="スマホ"; } } </script>

と処理を記述することは、二重に記述(a.innerHTML)するようなダサい、古い、原始的な感覚がありますが、今でもこれは一般的なのでしょうか?

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

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

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

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

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

guest

回答2

0

「判定してどうしたいか」次第です。
レイアウトの話ならCSSのほうが適切ですし、JavaScript上で判定が必要な要件であれば、別に構いません。
というかそもそも技術や実装手法の選定に「ダサい」「古い」は介入しません。
「古い」がセキュリティ上問題あったり機能サポートの問題があれば検討すべきですが、
そうでないなら要件満たすために必要な処理を入れていくだけです。

投稿2023/02/24 05:10

m.ts10806

総合スコア80850

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

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

yambejp

2023/02/24 05:15

冗長・煩雑=ダサいというのは着眼点としては良いと思うのでその言葉尻だけをあえて否定する必要はないと思います。
m.ts10806

2023/02/24 05:33 編集

ご指摘ありがとうございます。表現の問題だとは思いますが、ちょっと気になったもので。 実装に問題が起きてない前提なら「より良い組み方(もしくは効率的・機能的)」みたいな表現の方が私個人としては好みですし、「どうしたいか」を正しく伝えられると思います。
yambejp

2023/02/24 05:42

お気を悪くされたら申し訳ないです。私もm.ts10806さんの指摘は合理的だとはおもっております。 ただ、自分もたまにクリティカルなソースが書けたときに「やばい、かっこいい」と自画自賛する(あくまでも自分の中で)ことがあるので心情的な表現は以外にモチベーションに有効かなと思っています。たいてい自分がかっこいいと思うソースは他人に評価されないことがおおいのも事実ですが・・・
m.ts10806

2023/02/24 05:46

いえ、ご指摘もっともだと思います。正しい表現をできなくて損してる人はどこの世界にもいるので。 >たいてい自分がかっこいいと思うソースは他人に評価されないことがおおいのも事実ですが・・・ あるあるですね。アプリケーションやサービス利用者には見えない世界なので結構自己満足の世界です。 なので、チーム開発でしたら同プロジェクトの先輩とか後輩に自慢するくらいで終わるケースが多いです。 という経験もあるので、同じように頑張った感のあるコードを見つけたらなるべくちゃんと聞いてあげるようにはしてますねー。
guest

0

ベストアンサー

気になるなら三項演算子で

javascript

1a.textContent=(screen.width>=pxを指定して判別)?"PC":"スマホ";

投稿2023/02/24 05:03

yambejp

総合スコア114769

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問