プログラミングに詳しいもまえら来て!!!

1 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:06:05.250 ID:c9nx1qnG0
配列の中身をチェックする関数を作る場合、引数は
1.配列の中の一つのデータを指定する
2.配列を指定する

どっちが正しいの?

2 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:06:42.664 ID:c9nx1qnG0
あるいはどちらが拡張性高いかってのに置き換えてもいいです
3 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:06:59.800 ID:kN20U3F00
状況による
4 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:07:14.659 ID:FJxpG/LT0
3.うんち
5 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:07:27.337 ID:fo7JPQmq0
中身のチェックという言葉の定義を明らかにしないとやりたいことが伝わらない
9 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:08:57.416 ID:c9nx1qnG0
>>5
じゃあ電話番号を持った配列に正規表現で探索かける
6 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:08:10.823 ID:FVHX0Sh6a
要素だけ引数にするってクソかったるく無いか
12 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:09:57.933 ID:c9nx1qnG0
>>6
いやfor文が関数の中に入るか外に出るかだけの違いだよ
7 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:08:46.487 ID:Q/cArP0O0
両方作っとくそして1しか使わないまま囚われたコードが生まれる
8 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:08:52.337 ID:LQr2WLQw0
どんなチェックするの?
10 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:09:00.755 ID:G0faeuenp
1だと関数使うたびにエラー処理をしなきゃいけなくて面倒くさいから2
11 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:09:35.214 ID:MGKaDhFH0
言語によるんじゃね
13 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:10:58.617 ID:0tVKL/uY0
配列の全要素をループさせてチェックします
15 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:11:10.147 ID:LQr2WLQw0
整数型の配列のこと?
それとも文字列?(Cなら文字配列)
16 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:12:06.616 ID:oQEHGfwH0
単体チェックの関数とそれを呼ぶfor文の関数を書けばいいのでは?
20 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:15:22.435 ID:c9nx1qnG0
いろいろ考えてみたけど>>16でいくことにしたわ
これがいっちゃんシックリくる
17 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:12:20.287 ID:MGKaDhFH0
some or includes使っとけ
19 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:14:00.744 ID:c9nx1qnG0
>>17
なにそれしんない
21 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:15:40.537 ID:VeUSxxjYa
他の箇所でもそのチェック処理を使う可能性があるなら、1を共通処理化
2のチェック処理も他の箇所で使う可能性があるなら2も共通処理化
23 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:16:50.826 ID:c9nx1qnG0
>>21
なるほどそうやって考えるんだね
22 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:16:42.578 ID:LQr2WLQw0
複数の電話番号のリストがあってそれぞれの番号に対してある条件(正規表現)で検索かけるって言ってんのか?

でお前はリスト丸ごと関数に渡すか単一の電話番号だけ渡すかで迷ってんのか?

24 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:17:05.422 ID:c9nx1qnG0
>>22
うゅん!!!
26 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:17:15.402 ID:QTBg7vRi0
ポインタ渡しじゃだめなん?(´・ω・`)
27 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:17:48.351 ID:jEwG1BMD0
foreach item in items
if
でよかろう
30 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:20:02.069 ID:LQr2WLQw0
なら>>27でいい
ラムダ式使えるなら短くかけるけど
28 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:18:21.781 ID:0tVKL/uY0
配列にはmap, collect, each, foreachとかを先ずぶつけるわ
29 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:18:37.464 ID:TEtgpema0
どの言語だよ
31 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:20:14.500 ID:sj6boVSM0
そもそも配列を、もしくは一部を引数にするという設計が間違ってる
クラスに配列を持たせてメソッドでアクセスするというのがスッキリするはず
33 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:20:30.134 ID:tR+csGUE0
???
filterすればいいだけでは
???
34 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:20:52.244 ID:QV+2jJNz0
ポインタだろ
36 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:26:57.087 ID:vIiifUhg0
これは圧倒的に1ですな
37 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:29:06.394 ID:LQr2WLQw0
クラスに何をさせるのか状態をどう表現するかは宗教思想によるからどれが正解とは言わんけど俺は1でいいと思うよ
38 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:29:59.572 ID:LQr2WLQw0
うそうそ2だわ
40 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:30:35.815 ID:tR+csGUE0
配列に対するコールバックって意味なら1になる
何かのでかいクラスの便利な関数なら2をつくる
46 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:37:25.253 ID:c9nx1qnG0
>>40
稚拙なコードでごめんなさいだけど

class Array{
array=[]
search(callBack){
result =[]
for s : array
result.add(callBack(s))
}
}
こんなんになるの?
あれなんか元々配列クラスってサーチ用の関数持ってるんだっけ…?

49 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:41:09.302 ID:tR+csGUE0
>>46
何したいのか知らんけどprototypeに追加すればいいのでは
41 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:32:42.113 ID:tR+csGUE0
コールバックイコール非同期ではないが?
promise使え
42 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:32:46.023 ID:hbRzG+M20
単体でチェックする関数を作って配列を引数とする関数から呼び出す
44 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:34:15.736 ID:hCnboyHOd
Facadeパターンも知らんド素人ばっかか
45 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:36:36.965 ID:czxPQ28La
>>44
今クラスレベルの話してないやろ
48 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:38:50.659 ID:LQr2WLQw0
>>45
スレ主のレベルを履き違えてる奴だからほっとけ
47 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:38:21.784 ID:Lij1rtNq0
関数別に作るとレスポンス悪くなるからわけなくていい
51 名前:ひみつの名無しさん 投稿日時:2020/01/16(木) 01:45:19.593 ID:MGKaDhFH0
配列に絞り込みかけて配列作りたいならおとなしくfilter使え

コメント

タイトルとURLをコピーしました