+ JavaScript & jQuery 質問用スレッド vol.6 +at HP
+ JavaScript & jQuery 質問用スレッド vol.6 + - 暇つぶし2ch995:Name_Not_Found
16/11/21 09:28:38.00 .net
もうES6へ移行してもいいですか?

996:Name_Not_Found
16/11/21 09:58:07.88 .net
>>981
移行して良いかの判断基準を自分で決めましょう

997:Name_Not_Found
16/11/21 10:07:44.39 .net
なんでconstが変更できるんだよハゲ

998:Name_Not_Found
16/11/21 13:18:57.46 .net
変更できねえよハゲ

999:Name_Not_Found
16/11/21 14:07:21.15 .net
>>984
これ

URLリンク(qiita.com)
しかし、配列(オブジェクト)やオブジェクトは気をつける必要があります。プロパティは変更可能となります。

// 直接変更は不可
const NUM_LIST = [1, 2, 3];
NUM_LIST = [5, 5, 5]; // エラー

// プロパティの変更は可能
const NUM_LIST = [1, 2, 3];
NUM_LIST[0] = 5;

console.log(NUM_LIST); // [5, 2, 3]

1000:Name_Not_Found
16/11/21 14:35:25.65 .net
>>985
Bugみんなもんだろw

1001:Name_Not_Found
16/11/21 14:59:01.00 .net
for inって非推奨なの・・?
某プログラミングスキルチェックサービスでfor in使ったら怒られたんだが

1002:Name_Not_Found
16/11/21 15:05:49.87 .net
>>985
ああそういうことね。
JSのconstは、ポインタが何を指すかを固定するようなものだから、値の中身は書き換えられるよ。
値の中身も固定したいならObject.freeze()を使う。
URLリンク(developer.mozilla.org)

1003:Name_Not_Found
16/11/21 15:10:10.66 .net
>>987
ただの配列にまで使ったら怒られるというか誤作動しうる

1004:Name_Not_Found
16/11/21 15:11:28.63 .net
それじゃそろそろ次

jQuery 質問スレッド vol.7 [無断転載禁止]?2ch.net
スレリンク(hp板)

1005:Name_Not_Found
16/11/21 15:11:39.10 .net
うめ

1006:Name_Not_Found
16/11/21 15:11:49.05 .net
うみ

1007:Name_Not_Found
16/11/21 15:12:15.08 .net
console.log('bye world.');

1008:Name_Not_Found
16/11/21 15:12:28.21 .net
var e;

1009:Name_Not_Found
16/11/21 15:12:59.15 .net
void function(void){
void;
};

1010:Name_Not_Found
16/11/21 15:13:13.69 .net
return 4;

1011:Name_Not_Found
16/11/21 15:21:48.25 .net
>>989
誤動作する使い方があるなら教えて欲しい

1012:Name_Not_Found
16/11/21 16:05:20.65 .net
>>997
忘れた
ただ昔某サイトをユーザースクリプトで書き換えようと思ったら
for in使われてたせいで誤爆してアプローチの変更を余儀なくされたことは覚えてる

1013:Name_Not_Found
16/11/21 16:13:12.93 .net
性能を決める関数で for-in を使うのはやめよう

for-in にも使い道はあるものの, for を使うべき場面でよく誤って使われている. for-in で列挙をする前に,
スクリプトエンジンは列挙可能なプロパティのリストを作って重複を弾かなければいけない.

スクリプト側が列挙するプロパティを知っていることはよくある. こうしたプロパティをなめるならふつうの for 文が使える.
配列や, 配列風のプロパティを持つオブジェクト (DOM の NodeList? など) のように, 連番の数字なら特にそうだ.

for-in 誤用の例を以下に示す:

var oSum = 0;
for( var i in oArray ) {
oSum += oArray[i];
}

for を使う方が効率的になる:

var oSum = 0;
var oLength = oArray.length;
for( var i = 0; i < oLength; i++ ) {
oSum += oArray[i];
}

1014:Name_Not_Found
16/11/21 16:16:40.78 .net
次スレ

jQuery 質問スレッド vol.7
スレリンク(hp板)

+ JavaScript の質問用スレッド vol.131 +
スレリンク(hp板)

1015:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch