のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,685,080人
昨日:no data人
今日:
最近の注目
人気の最安値情報

元スレJavaScript の質問用スレッド vol.132

JavaScript覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

651 = :

単語を一文字一文字読んでなくとも長いほうが読みにくいだろ!
という突っ込み禁止

652 = :

>>644
つまり参照でないプリミティブならconst使わなくて良いということでいい?
>>638は値は変えないって書いてあるから

653 = :

>>651
数文字程度では影響ない

654 = :

>>653
エディタの横の文字数がちょくちょく話題になったりもするし結構センシティブなものだろ

655 = :

>>652
まあconstは本当に定数、つまり全部大文字使うような変数だけでいいんじゃない?
自分も張り切って全constとかときたまやり始めることあるけど、別に実際役に立ってるとは思わないし

656 = :

>>654
それは単語の文字数の話じゃない

658 = :

>>655
constを使うかどうかは本質的ではなくて
一旦変数に入れた値を書き換えないということが重要

その時にconstであれば書き換えないという意図が
伝わりやすいから使うってだけ

> 別に実際役に立ってるとは思わないし
値が変わらないことが明確になるから
他で代入しているところを探す必要が無いという
メリットが実際にある

659 = :

>>655
ですよね
安心しました

660 = :

>>656
事実横が短いほうが読みやすいよ
結局はバランスでしょ
文字数削減も大事、分かりやすい変数名も大事
というか分かりやすい変数名って適度に短いことだよね

661 = :

>>658
一旦変数に入れたら書き換えるな、って理解不能

662 = :

>>658
他で代入しているところを探す必要
というのがピンとこないや

663 = :

>>661
関数型とかそういう方面の人の考えらしいよ
セットで付くのが副作用厳禁だね

665 = :

>>660
> 事実横が短いほうが読みやすいよ

それは単語の文字数の話ではない

666 = :

>>663
むしろオブジェクト指向が行き過ぎた人の考えじゃないのか

667 = :

>>661

var sum = 0; // 合計

console.log(sum) // ← 出力されるの合計じゃないじゃん。ウソじゃん

for (var i = 0; i < 10; i++) {
 sum = sum + foo(i)
)

668 = :

>>665
はいはい都合の悪い話は除外除外
頑固だなお前

669 = :

一旦変数にいれて書き換えないならば>>667のようなウソがなくなる

670 = :

>>668
名前が長くても改行入れれば横は短くできる。
はい論破w

671 = :

666は一体どういうことなんだ

672 = :

>>667
1から10までの数字を全部合計したものを得たいときどう書くんだ

673 = :

>>670
論破ご苦労さん
それはそれでおいといて
いい加減真面目に本当に役立つ話をしないか?

674 = :

>>672
こう

const num = sum(1, 10)

function sum(from, to) {
var n = 0
return n
for (var i = from; i <= to; ++i ) n += i
}

675 = :

>>672
http://lodash.com/docs/

const total = _.sum(_.range(1, 10));

676 = :

>>671
変更する予定が無いなら初期化時にちゃんと値を入れようって事かな?

677 = :

>>674は間違い

678 = :

で、でたーwww

679 = :

>>676
変数だとね。名前が嘘になってしまうのですよ。

680 = :

>>678
でたもなにもずっといるわw

681 = :

頭がおかしくなる

682 = :

そこまで関数型にこだわるんなら関数型系のAltJS使ったほうが良くね?

683 = :

>>674はconstがどうこうではなくsumをnに変えただけ

684 = :

>>682
関数型系のAltJSで、将来性を期待できるほど
バックについている企業、コミュニティが
大きいものがあればそうするよ。

残念ながら、MS、Google、Mozillaなどと言った
そうそうたるメンバーが参加してる言語とは比べ物にならない

685 = :

皮肉でしょ
constで書けない部分を全部外に出せば全部constで書けたようにみえ……ないっていう

686 = :

constは「絶対書き換えたくない、定数として扱いたいもの」を
うっかり書き換えないようにしたいときだけ使えば良い

結局これでいいんだな

687 = :

JavaScriptにもreduceがあるから、sumのような
前の結果に付け加えていく処理をconstだけで
作ることはできるが、

実際に使うとなったら、読みづらく関数型言語のように
標準のライブラリも関数型チックなものは充実してないから、
lodashのような関数型風に書くことができる
ライブラリを使うのが現実的

688 = :

>>686
というか、普段からバグを少なくするために
変数を書き換えたりしないから、
それならconstでいいんじゃね?ってなるよ

689 = :

>>686
うっかり書き換えないようにしたいときだけ
と言うのは一番まともそうで一番ない理由だと思う
何にせよ、ニュアンスの表記というのが一番大きい
だからどう活用するかは人次第

690 = :

>>689
if( variable === SOME_CONSTANT_VAR )
と書くべきところ
if( SOME_CONSTANT_VAR === variable )
のように入れ替えて
if( SOME_CONSTANT_VAR = variable )
というふうに間違えて代入してしまう、というありそうな例

691 = :

constを使っていれば、>>690のようなバグもなくなる

692 = :

>>688
何だかんだ言ってconstの最大の欠点は文字数じゃね?
もしconstがSwiftみたいにletでscopedとかだったら、みんな前者を使い出す気がする
結局文字数が掛かるから、それは特別感を出すために使われてしまう

693 = :

変数を書き換えないためにvar宣言をconst宣言に変えて関数に追い出すでしょ
関数の中でvar宣言すると書き換えバグが起きるかもしれないからconstにするでしょ

694 = :

>>691
ごめんけど、自分はそのミスを最低10年はしたことがないし、する想像もできない

695 = :

>>692
constがletでletがscoped の間違い

696 = :

>>694
想像もできないやつにはメリットがわからんだろうなw

でも実際に起ってるからね
ぐぐってみ

698 = :

まあ定数としたい値を間違えて書き換えるバグの防止としては意味ある
変数を書き換えたりしないっつーのはありえんがな

699 = :

>>696
エディタが警告出すような極めて低レベルなことだと思うけど
そんなことのためにconstとか、constに失礼

700 = :

でもまあ、関数型の一番のメリットは
コードが短くなるってことだと思う


←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について