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

私的良スレ書庫

不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

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

JavaScript スレッド一覧へ / JavaScript とは? / 携帯版 / dat(gz)で取得 / トップメニュー
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
レスフィルター : (試験中)
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
901 : Name_Not - 2017/03/14(火) 16:44:52.94 ID:???.net (+75,+28,-63)
>>899
実際イテレータじゃないと怒られた
ただ無限が良く分からん
それとオブジェクトにプロパティchildrenは確実に付随するもんなのか
902 : Name_Not - 2017/03/14(火) 16:45:59.78 ID:???.net (+55,+29,-17)
馬鹿にされながら「優しく」されるのは初めての経験で困惑してる
全く優しくされた気がしない
903 : Name_Not - 2017/03/14(火) 16:46:03.64 ID:???.net (+84,+29,-17)
>>870ですが何だかすみません
再帰はなるべく使わないようにします
904 : Name_Not - 2017/03/14(火) 16:46:22.04 ID:???.net (-1,-29,-18)
あ、DOM elementにchildrenがついてきてるのはなんとなくわかる
905 : Name_Not - 2017/03/14(火) 16:47:22.02 ID:???.net (+32,-29,-14)
>>900
そこはオブジェクトだろうけど、objの下もobjとは書かれてない
906 : Name_Not - 2017/03/14(火) 16:49:54.94 ID:???.net (+129,+26,-7)
>>905
再帰 ← この文字読める?意味わかってる?
907 : Name_Not - 2017/03/14(火) 16:55:39.55 ID:???.net (+13,-29,-77)
>>901
関数名が「sendChildren」なんだから引数に渡すオブジェクトに子要素を格納してるプロパティがあるのは必然と、一般的なプログラマなら判断する
908 : Name_Not - 2017/03/14(火) 16:58:07.14 ID:???.net (+66,-29,-163)
>>901
「無限に参照」は「無限に参照しようとするが、例外で止まる」というべきだった、そこはすまん
>>876を素直に読むと obj.children.children.children... のように参照し続けようとする
obj.childrenに対して「必ず」再帰処理するのだから当然だ
ところが、再帰処理する間にobjがnull,undefinedだったり、obj.childrenがイテレータではなくなるかもしれない
ここでエラーにならない方法はchildren.lengthが0である事だが、>>892が指摘するように0でなかったら破綻するわけだな
>>876は「objの中身が何か」を明確に表してないので俺は「objの中身が何であっても例外なく処理できるようにする事」を考えるが、どんな前提があるのか分からんのに例外処理を書いてやるのが面倒くさい
(意訳: 条件次第では例外処理をさぼれるから前提条件をもっとちゃんと書け。最低限、動くコードを書け。)
909 : Name_Not - 2017/03/14(火) 17:05:20.69 ID:???.net (+8,-29,-54)
>>901
> それとオブジェクトにプロパティchildrenは確実に付随するもんなのか
{} の場合は明示的に children を初期化しなければ存在しない
910 : Name_Not - 2017/03/14(火) 17:06:23.07 ID:???.net (+70,+29,-8)
>>908
まあ>>906-907が全てだな
単にお前がコードも読めない無能なだけ
911 : Name_Not - 2017/03/14(火) 17:08:21.12 ID:???.net (+4,-29,-18)
>>907-909
解説サンキュー
つまるところ何のobjかわからない、限定されてない、性質上必ずchildrenを持つobjとは判断できない、
そんでもって通常var o = {};してもo.childrenが絶対ついてくるってわけじゃないんだよな
安心した

再帰ってこういう前提問題があるから毎回説明コメントをがっつり入れざるを得ないのがめんどい
912 : Name_Not - 2017/03/14(火) 17:11:33.17 ID:???.net (+49,+26,+0)
何この分かりやすい自作自演擁護
913 : Name_Not - 2017/03/14(火) 17:12:01.14 ID:???.net (+75,+29,-12)
>>906
当然、知ってる
再帰処理がフォーマットを決定づけるものではないから、知ってても意味ないけどね
914 : Name_Not - 2017/03/14(火) 17:15:19.80 ID:???.net (-2,-30,-21)
というか、なんで for( let child of obj.children ) なん?
構造確定しててこういう再帰だったらchildrenはobjectじゃなくて配列のほうが良くない?
915 : Name_Not - 2017/03/14(火) 17:17:30.77 ID:???.net (+2,-25,-7)
普通に配列でもOKで普通に配列だったすまん
916 : Name_Not - 2017/03/14(火) 17:18:30.83 ID:???.net (+57,+29,-38)
関数は引数のフォーマットを決定付けるものではない(キリッ

また物凄い屁理屈が出たな
言い訳の度にボロが出るんだから黙れば良いのに
917 : Name_Not - 2017/03/14(火) 17:19:29.95 ID:???.net (+70,+29,-28)
確かに。構造確定しているなら多次元配列の方がスマートだよなあ。
ところで、>>891はただの空配列しかできないから構造として全く意味を無さないと思う。
918 : Name_Not - 2017/03/14(火) 17:20:37.66 ID:???.net (+124,+29,-13)
いや、「再帰=フォーマット確定」は思い込みが激しいだけの人だと思うぞ
919 : Name_Not - 2017/03/14(火) 17:26:16.85 ID:???.net (+70,+29,-82)
>>918
関数に渡される引数には役割通りの型が求められるってコーディング規約以前にプログラミングの常識だと思うが
920 : Name_Not - 2017/03/14(火) 17:27:46.21 ID:???.net (+72,+27,+0)
>>918
思い込みの激しいカス
大学ならFラン
921 : Name_Not - 2017/03/14(火) 17:29:50.55 ID:???.net (+94,+29,-17)
常識を言うなら、再帰関数で与えられた引数そのものを再帰的に処理するときは
引数のチェックから始めるのが筋では
922 : Name_Not - 2017/03/14(火) 17:34:30.22 ID:???.net (+62,+29,-57)
あと必要に応じて無限ループに陥らないよう処理回数や世代数の上限を定めるとかかな

こういうのこなすのは前提として、楽に繰り返し構文で書けるなら再帰を使わない
あとループで簡単にこなせるとしても汎用性があるなら再帰を使う、って感じ
923 : Name_Not - 2017/03/14(火) 17:38:27.02 ID:???.net (+57,+29,-9)
引数のチェックは再帰以前に一般的な関数を書くときの常識だと思ってた
924 : Name_Not - 2017/03/14(火) 17:41:10.40 ID:???.net (+112,+30,-95)
>>921
なら聞いてやるが引数の型が想定と違った場合はどう処理すんの?

例外吐いて止める以外の答えを出したらお前は致命的なミスやらかす前にプログラマを辞めるべきだし、
例外吐いて止めると言うならそもそも型チェック自体がいらねえってことにも気付かないカスと認めることになるが
925 : Name_Not - 2017/03/14(火) 18:02:41.56 ID:???.net (+77,+29,-71)
>>924
そんなもん仕様・再帰関数の中の実処理によるだろ
値を返していかないならすぐさまreturnするのもありなケースもある
例外投げるにしても想定できてるなら自前でわかりやすい例外オブジェクト作って投げれ
関数書いた奴以外が関数使って例外もらったときに気を使え

そもそも例外前提なら例外掴むコード書けよ
926 : Name_Not - 2017/03/14(火) 18:11:08.56 ID:???.net (+50,+29,+0)
馬鹿には何を言っても無駄
927 : Name_Not - 2017/03/14(火) 18:14:39.86 ID:???.net (+57,+29,-23)
ほんの数時間前に「コードが動かない」って喚いてた事実が、全ての言い訳から説得力を奪ってるからなぁ
928 : Name_Not - 2017/03/14(火) 18:16:01.18 ID:???.net (+57,+29,-16)
煽って技術引き出してくスタイルなんだろ
929 : Name_Not - 2017/03/14(火) 18:21:38.84 ID:???.net (+16,+28,-2)
まだ続けるのか池沼
930 : Name_Not - 2017/03/14(火) 18:55:05.71 ID:???.net (+57,+29,-45)
再現可能なコードを出した方がいいのは言うまでもないが、ここで煽っている人とやりあっても仕方ないという事だな
真面目に回答している人が哀れになってくる
931 : Name_Not - 2017/03/14(火) 19:13:54.98 ID:???.net (+130,+29,-44)
俺は半年くらい前から真面目に回答するのをやめたわ
複数の回答サイトを使っていればすぐ分かると思うが、このスレの環境は劣悪すぎる
932 : Name_Not - 2017/03/14(火) 19:19:59.15 ID:???.net (-1,-29,+0)
幻滅しましたteratailに行きます
933 : Name_Not - 2017/03/15(水) 00:53:10.33 ID:???.net (+151,+30,-93)
>>931
複数の回答サイトを使っていればすぐわかると思うが、
正しい回答が含まれる確率はこのスレがずば抜けて上だよ
一方碌でもない回答が付く可能性もずば抜けて上
でも個人的には50%の確率で堂々と間違った回答がベストアンサーになってしまう
外の世界は大嫌いだから主にここに閉じこもってる
向こうはそれこそJS知らないのにググってきた情報から回答する奴も沢山いるからな
934 : Name_Not - 2017/03/15(水) 00:57:09.50 ID:???.net (+57,+29,-60)
質問サイトは「分かりません」と回答する奴が半数で、質問者に謎の逆ギレしてる奴が半数という魔境だしな
935 : Name_Not - 2017/03/15(水) 02:32:18.10 ID:???.net (+91,+29,-4)
知らないのにググって回答書くというのはどうなんだろうか
936 : Name_Not - 2017/03/15(水) 02:49:30.67 ID:???.net (+70,+29,-18)
>>935
URL引っ張ってくる
でもよく似た別のものだったりする事が多々ある
プログラミングだと同じ字面でも違うものもあるしな
937 : Name_Not - 2017/03/15(水) 15:49:04.09 ID:???.net (+106,+29,-2)
>>933は全部2chでもよくあることだけどねえ
938 : Name_Not - 2017/03/15(水) 17:02:57.26 ID:???.net (+72,+29,-22)
>>937
2chは天邪鬼やプライド高いやつが集まってるから
一通りの見方が公平に集まって良い
939 : Name_Not - 2017/03/15(水) 17:06:59.20 ID:???.net (+94,+30,-21)
天邪鬼やプライド高いやつが集まってるなら公平な見方になるわけないのだが
940 : Name_Not - 2017/03/15(水) 17:11:59.41 ID:???.net (+112,+30,-58)
>>939
いろんな視点から意見が出揃うことが何より大事
初心者にとってもそういったのを眺め続けて、
とにかく玉石混交の情報を沢山自分の中にためていって
自分なりの答えを固めていくのが一番良い

ただそれっぽい回答で即締め切りの外部サイトはよりマシ
941 : Name_Not - 2017/03/15(水) 17:40:28.05 ID:???.net (+114,+30,-38)
>>940
そういう意味ではなく、天邪鬼やプライド高いやつしかいない場ではgdgdな回答しか集まらないという事
初心者はそういういろんな意見が集まった中から正しい回答を選び取る観察眼を持ってないからそういう意見がある事はメリットにならない
942 : Name_Not - 2017/03/15(水) 17:44:54.67 ID:???.net (+85,+29,-79)
そもそも、>>931は「回答者にとって劣悪すぎるから2chで回答を止めた」といっているのに対して>>933は回答の質がどうたらこうたらと頓珍漢な方向に反論してるのがな
回答者にとっての場としてみるなら「stackoverflow >> teratail >>>> 超えられない壁 >>>> 2ch」だろうな
943 : Name_Not - 2017/03/15(水) 17:50:15.12 ID:???.net (+69,+26,-13)
知恵袋も入れてあげて!
944 : Name_Not - 2017/03/15(水) 17:50:39.43 ID:???.net (+42,+14,-3)
よくわからんが最終的に役立つ回答があればOKなんでしょ
945 : Name_Not - 2017/03/15(水) 17:52:54.71 ID:???.net (+58,+30,-35)
そういえば、以前に「2chは煽って煽って煽りまくればプライドが高い人が回答をくれるいいところだ」と主張している奴がいたなあ
質問して回答が来ればなんでもいいという質問者本位な考え方
946 : Name_Not - 2017/03/15(水) 17:58:31.77 ID:???.net (+52,+29,-3)
それ自体が負け惜しみだったりして
947 : Name_Not - 2017/03/15(水) 18:00:32.48 ID:???.net (+63,+30,-127)
他所でよく見るgoogleの検索結果しか載せないって回答は全く自分で調べる気がない質問者にはよく見るけど、大抵的外れでもないんだよね
でも、質問者はそれでは分からないから質問を繰り返して最終的に回答者がコピペできるコードを乗っけてくれるまで粘る
こういう自分で調べる気が全くない他人におんぶな質問者を擁護する人って自分の事しか考えてないんだろうなあ
948 : Name_Not - 2017/03/15(水) 20:48:59.47 ID:???.net (+87,+30,-94)
>>941
正しい回答を選び取る必要はないよ
情報を自分の中に貯めることが大切だから
こういうのもあったな、ああいうのもあったなというのが一番初心者にとって役に立つ
何かを理解するためには別の何かを知っていないと行けないというジレンマがあるが
これを解決するには極めて体型だった学習か、
それがないプログラミング界では一定の閾値まで情報を貯めるということになる
949 : Name_Not - 2017/03/15(水) 20:55:12.12 ID:???.net (+57,+29,-3)
またわいてるのかよ
いい加減にしろよ
950 : Name_Not - 2017/03/15(水) 21:01:09.39 ID:???.net (+19,+29,-24)
>>948
「間違っているかもしれない情報を自分の中に貯める事に意味がある」とそういいたいわけか
正当性を主張するにしても苦しすぎるぞ
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / JavaScript スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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