検索

ホームページ  >  に質問  >  本文

javascript - ある配列が別の配列からランダムな要素を取得する

配列 a=[4,19,23,44,56,1] があり、新しい配列 b を作成します。b は、要素がなくなるまで a から一度に 1 つの要素をランダムに選択します。 JavaScript で実装

PHP中文网PHP中文网2751日前714

全員に返信(7)返信します

  • 高洛峰

    高洛峰2017-05-19 10:33:39

    疑似ランダムで a をシャッフルし、任意の 2 つの位置の数字を交換し、これを n 回繰り返してシャッフル効果を実現し、それを b に割り当てることができます。

    または、コードの効率性を考慮しない場合は、lodash ライブラリが提供する配列操作を使用してコードをよりエレガントにすることができます。 リーリー

    より良い疑似ランダムメソッドを考えました。これは、直接ランダムにソートされ、コードがより単純で、操作効率が高いです: リーリー

    返事
    0
  • 仅有的幸福

    仅有的幸福2017-05-19 10:33:39

    リーリー

    返事
    0
  • 世界只因有你

    世界只因有你2017-05-19 10:33:39

    実装は次のとおりです:

    リーリー

    返事
    0
  • 漂亮男人

    漂亮男人2017-05-19 10:33:39

    私のアイデアは、この配列を走査し、この配列内のランダムな要素を取得し、それらを配列 a から削除して配列 b にプッシュするということです

    リーリー

    返事
    0
  • 滿天的星座

    滿天的星座2017-05-19 10:33:39

    リーリー

    返事
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-19 10:33:39

    リーリー

    返事
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-19 10:33:39

    4 階までは書きません。ランダム化後、配列から 1 つずつランダムに選択し、削除したものを新しい配列にプッシュするだけです。大丈夫

    返事
    0
  • キャンセル返事