私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレ+ JavaScript の質問用スレッド vol.133 +
JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
それより>>647が提示したコードがいろいろヤバい
関数型っぽい書き方の方がイケてることに異論はありませんが
パフォーマンスではforやwhileの方が勝ります
ループ中で繰り返し呼び出されるような処理では、
やはりforやwhileで書きますよね?
パフォーマンスではforやwhileの方が勝ります
ループ中で繰り返し呼び出されるような処理では、
やはりforやwhileで書きますよね?
パフォーマンスならforで書く。
ボトルネックにならないならforEachで書く。
書きやすいし読みやすいから。
ボトルネックにならないならforEachで書く。
書きやすいし読みやすいから。
比較して見ると、複雑な箇所が分かりやすいかもね
let i = 4;
while (i--) obj.a();
for (let i = 0; i < 4; i++) obj.a();
for (let v of [4,3,2,1]) obj.a();
[4,3,2,1].reduce(()=> obj.a());
let i = 4;
while (i--) obj.a();
for (let i = 0; i < 4; i++) obj.a();
for (let v of [4,3,2,1]) obj.a();
[4,3,2,1].reduce(()=> obj.a());
>>647
おいおい、
obj.a();obj.a();obj.a();obj.a();
と
obj.a().a().a().a();
は全然ちがうんだが。
reduceの動作理解した上での批判ならまだしも、それじゃお前が理解できないものを僻みで批判してるだけじゃん。
おいおい、
obj.a();obj.a();obj.a();obj.a();
と
obj.a().a().a().a();
は全然ちがうんだが。
reduceの動作理解した上での批判ならまだしも、それじゃお前が理解できないものを僻みで批判してるだけじゃん。
>>654
おいおい、
obj.a();obj.a();obj.a();obj.a();
と
obj.a().a().a().a();
は全然ちがうんだが。
お前が書いたやつは全部
obj.a();obj.a();obj.a();obj.a();
になる。
お題は
obj.a().a().a().a();
お前のだとアキュムレータ使ってないからそれこそreduceの意味まったく無い。
初心者か?
はじめてのjavascriptからやり直したら?
おいおい、
obj.a();obj.a();obj.a();obj.a();
と
obj.a().a().a().a();
は全然ちがうんだが。
お前が書いたやつは全部
obj.a();obj.a();obj.a();obj.a();
になる。
お題は
obj.a().a().a().a();
お前のだとアキュムレータ使ってないからそれこそreduceの意味まったく無い。
初心者か?
はじめてのjavascriptからやり直したら?
obj.a();obj.a();obj.a();obj.a();
の場合はreduceの意味まったく無い。
なぜならforEachで十分だから。
初心者がお題勘違いしたのを流れだとか言って誤魔化してるだけ。
の場合はreduceの意味まったく無い。
なぜならforEachで十分だから。
初心者がお題勘違いしたのを流れだとか言って誤魔化してるだけ。
しかも、>>607の要件だとしても、本質は変わらないと思う
let i = 4;
while (i--) obj = obj.a();
for (let i = 0; i < 4; i++) obj = obj.a();
for (let v of [4,3,2,1]) obj = obj.a();
[4,3,2,1].reduce(obj => obj.a(), obj);
let i = 4;
while (i--) obj = obj.a();
for (let i = 0; i < 4; i++) obj = obj.a();
for (let v of [4,3,2,1]) obj = obj.a();
[4,3,2,1].reduce(obj => obj.a(), obj);
どうでもいいが、どれも前提に
var o = hoge; ないし var obj = hoge; が入ってるんだよな?
var o = hoge; ないし var obj = hoge; が入ってるんだよな?
関数型の本読むと
forより関数型の再帰のほうが抽象性が高くてよみやすいからいいと書いてたりする。
自分も書き慣れたforでやっちゃうけど。
forより関数型の再帰のほうが抽象性が高くてよみやすいからいいと書いてたりする。
自分も書き慣れたforでやっちゃうけど。
有名になったら急に親戚が増えるのと似てるな。
そんなクソスレは知らん!
そんなクソスレは知らん!
なんだかなぁ
例えば配列の中身は使わないけど、ただ繰り返しのためにreduceを使うということも
任意の長さの有効な中身が入った配列を作るハックも
何らしかの理想形を目指す過程で1つだけ妥協してそういったテクニカルな物を入れるのはありだと思うけど
例えば何かの絵でも文章でもいいから特定の理想スタイルに拘って作ってたとして、
表現が困難な部分が1箇所くらいでてきてもあまり品質を損なわせること無くごまかせるけど、
あちらもこちらもということになると元々目指してた理想とは随分形が変わってくるし、
他人が見たときにそれが何を目指したものなのかすらわからなくなる
苦労してそんなものしか作れないのなら
最初からもっと楽してカッコつけなくて描く方法があるでしょってことになる
例えば配列の中身は使わないけど、ただ繰り返しのためにreduceを使うということも
任意の長さの有効な中身が入った配列を作るハックも
何らしかの理想形を目指す過程で1つだけ妥協してそういったテクニカルな物を入れるのはありだと思うけど
例えば何かの絵でも文章でもいいから特定の理想スタイルに拘って作ってたとして、
表現が困難な部分が1箇所くらいでてきてもあまり品質を損なわせること無くごまかせるけど、
あちらもこちらもということになると元々目指してた理想とは随分形が変わってくるし、
他人が見たときにそれが何を目指したものなのかすらわからなくなる
苦労してそんなものしか作れないのなら
最初からもっと楽してカッコつけなくて描く方法があるでしょってことになる
質問
reduceのアキュムレータで引き回して hoge.a().a().a().a() ... .a(); と実行させる方法
引き回し用の変数oにhogeを入れたうえでforで o=o.a(); を実行させる方法
見た目・行数以外で
これら2つの方法で厳密に言うと何と何と何がどう異なる?
要件としては>>607のとおり、function func(){}内で実行、returnしない、として
reduceのアキュムレータで引き回して hoge.a().a().a().a() ... .a(); と実行させる方法
引き回し用の変数oにhogeを入れたうえでforで o=o.a(); を実行させる方法
見た目・行数以外で
これら2つの方法で厳密に言うと何と何と何がどう異なる?
要件としては>>607のとおり、function func(){}内で実行、returnしない、として
重めのファイルを大量にダウンロードするパートがあるwebアプリで同時ダウンロード数3とか4とかに絞りつつ、それぞれのレーンはシリアルにダウンロードタスクこなしてくという処理に、
ダウンロードのpromiseの配列をreduceの中でaccum.thenで繋いでく方法取ったな。forよりだいぶん簡単に書けたが、知らん人には何やってんのかさっぱりやろな。
ダウンロードのpromiseの配列をreduceの中でaccum.thenで繋いでく方法取ったな。forよりだいぶん簡単に書けたが、知らん人には何やってんのかさっぱりやろな。
C++とか他の言語からさらにやってJSのクラス(プロトタイプ)とかみるとよくわからないってよくきくけど
JSからはいってC++とかいくとどうなの?
JSからはいってC++とかいくとどうなの?
ちょっとアレだからノーコメントで…
でも俺は頼まれて作っただけだからな。
でも俺は頼まれて作っただけだからな。
頼まれても作っちゃいけないモノってのがあるわけだが、そんなものを作ったと書き込むこともどうかと
実際はダウンロード数はブラウザが勝手に抑制して
同時に発行しても一定以上はpendingとなるから気にしなくても良い
同時に発行しても一定以上はpendingとなるから気にしなくても良い
決め打たなければならなかったんだよ。
ブラウザの制限にまかせとくと弾かれてしまうという…案件。
ブラウザの制限にまかせとくと弾かれてしまうという…案件。
このスレのタイトルが数式になってるんだと思って実行してみたら
Uncaught SyntaxError: Unexpected identifier
というエラーが出ました
どうすればいいですか?
そもそもJSかくひとならJSで実行できるスレ体にするべきじゃないですか?
アホですか?
Uncaught SyntaxError: Unexpected identifier
というエラーが出ました
どうすればいいですか?
そもそもJSかくひとならJSで実行できるスレ体にするべきじゃないですか?
アホですか?
おい、無視すんな。面白いこと言ったんだから何か答えろ
""+ "JavaScript の質問用スレッド vol." + 133
じゃあ次からこれで
じゃあ次からこれで
toStringやparseIntはきっちりやるべきだと思う
無論parseIntの第二引数は忘れてはならない
無論parseIntの第二引数は忘れてはならない
123abcという文字列をパースして
123という数値に変換するのは
バグだと思う
123という数値に変換するのは
バグだと思う
それすなわちバグということはないが、
CSSならTypedOM使ったり、input要素ならvalueAsNumber使ったり
もっと適切というか上品な手段があることは多いと思う
CSSならTypedOM使ったり、input要素ならvalueAsNumber使ったり
もっと適切というか上品な手段があることは多いと思う
16px, 1em, 100% とか、
こういうのを数字にする事を想定しているのだろう
こういうのを数字にする事を想定しているのだろう
>>690
そんな君にお勧めなのが Number()
そんな君にお勧めなのが Number()
>>692
きみあたまいいね
きみあたまいいね
~気にくわない挙動があったとき~
バカ「バグだ!」
天才俺「0.1+0.2はisoに基づいた仕様、typeof nullは仕様バグ」
バカ「バグだ!」
天才俺「0.1+0.2はisoに基づいた仕様、typeof nullは仕様バグ」
let a = { let x = 0; (何か処理); x; };
みたいな感じで書けないのはおかしい
let a = (() => { let x = 0; (何か処理); return x; })();
と書くしかないのか?
みたいな感じで書けないのはおかしい
let a = (() => { let x = 0; (何か処理); return x; })();
と書くしかないのか?
typeof null -> "object"はべつに仕様バグだとは思わんな
だって例えばtypeof null -> "null"になったところで、
対象がオブジェクトかどうか一発で判定できるわけではないし、
状況がハッキリ好転したりはしないもの
あとやっぱりJSに本当に必要なのは正確な判定ではなくて、
柔軟さを活用して問題を飲み込んで単純化することだと思う
つまり具体的にはtypeofのような存在による正確なオブジェクトの判定ではなく
今提案もされてるobj?.propのようなオプショナルなプロパティアクセスが重要
だって例えばtypeof null -> "null"になったところで、
対象がオブジェクトかどうか一発で判定できるわけではないし、
状況がハッキリ好転したりはしないもの
あとやっぱりJSに本当に必要なのは正確な判定ではなくて、
柔軟さを活用して問題を飲み込んで単純化することだと思う
つまり具体的にはtypeofのような存在による正確なオブジェクトの判定ではなく
今提案もされてるobj?.propのようなオプショナルなプロパティアクセスが重要
>>696
ECMA Stage 1. do expressions
http://github.com/tc39/proposal-do-expressions
Chromeで試すには「 --js-flags="--harmony_do_expressions"」
ECMA Stage 1. do expressions
http://github.com/tc39/proposal-do-expressions
Chromeで試すには「 --js-flags="--harmony_do_expressions"」
typeof null === 'object' は ECMAScript 3 の仕様バグ
http://d.hatena.ne.jp/think49/touch/20120114/1326554107
http://d.hatena.ne.jp/think49/touch/20120114/1326554107
前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
みんなの評価 : 類似してるかもしれないスレッド
- + JavaScript の質問用スレッド vol.113 + (1001) - [97%] - 2014/1/25 12:46
- + JavaScript の質問用スレッド vol.135 + (1002) - [97%] - 2018/11/23 10:30
- + JavaScript の質問用スレッド vol.123 + (1002) - [97%] - 2015/4/27 23:30
- + JavaScript の質問用スレッド vol.130 + (974) - [97%] - 2016/10/26 14:18
- + JavaScript の質問用スレッド vol.113 + (1001) - [97%] - 2014/3/15 21:30
- + JavaScript の質問用スレッド vol.131 + (1000) - [97%] - 2017/1/25 8:01
- + JavaScript の質問用スレッド vol.130 + (1001) - [97%] - 2017/11/25 20:45
- + JavaScript の質問用スレッド vol.131 + (1004) - [97%] - 2018/3/7 13:30
- + JavaScript の質問用スレッド vol.132 + (1001) - [97%] - 2018/4/19 11:00
- + JavaScript の質問用スレッド vol.134 + (1001) - [97%] - 2018/8/3 23:15
- + JavaScript の質問用スレッド vol.123 + (966) - [97%] - 2020/10/20 2:30
- + JavaScript の質問用スレッド vol.136 + (1001) - [97%] - 2019/1/8 11:30
- + JavaScript の質問用スレッド vol.139 + (1001) - [97%] - 2019/5/27 15:15
- + JavaScript の質問用スレッド vol.137 + (1003) - [97%] - 2019/3/26 11:46
- + JavaScript の質問用スレッド vol.143 + (753) - [97%] - 2020/4/19 5:00
- + JavaScript の質問用スレッド vol.103 + (1001) - [97%] - 2012/11/9 15:30
- + JavaScript の質問用スレッド vol.138 + (1004) - [97%] - 2019/4/20 23:45
トップメニューへ / →のくす牧場書庫について