問題タブ [array-splice]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
176 参照

javascript - splice は配列とその親配列から削除します - 奇妙な問題

こんにちは、コードにこの簡単なスクリプトがあります。

私にとって奇妙なのは、スプライスの後のcとdの両方が同じ結果になることです(cから3つのオブジェクトを削除した後、dからのみ削除しましたが、cではありません)。それを使用d.splice(0, 3)すると「d」から削除されるはずですが、なぜ「c」からも削除されるのでしょうか??? 何か案は ??私は何かが欠けています、plsは私を導きます。

0 投票する
1 に答える
1372 参照

php - PHP多次元配列 - 値マイナス1

多次元配列に問題があります。

配列にはさまざまなアイテムがあります。

各アイテムの名前と数量が画面に表示され、各アイテムの数量を 1 ずつ変更する - および + ボタンがあります。各ボタンは同じページに戻るフォームです。

以下の例は、- ボタンをクリックしたときに呼び出される関数です。アイテムの数量から 1 を引くことになっています。

数量から 1 を正しく差し引いており、item_id は正しいです。ただし、正しい配列項目を更新していません。マイナスボタンを押すと、バスケット内の他のアイテムの下に新しいアイテムが表示されるため、実際には新しい配列アイテムを作成しているように見えます。

array_splice 呼び出しで正しい配列アイテムを参照しているとは思いません。「array_splice($_SESSION["cart_array"]」の後に「$thisKey」と言うべきではないと思います。

しかし、必要な配列アイテムを正しく参照する方法がわかりません。

お知らせ下さい。

コード:

/ * ** * **** /

解決:

ソリューションへの貢献について Jeroen Bollen に感謝します。私のコードは次のように動作するようになりました:

0 投票する
2 に答える
149 参照

php - unset を使用して配列から $i を削除する PHP。アレイに穴があり、修正できません

私のコードのこの部分は、の値を使用して配列から項目を削除します$i$i=0;開始時$i=2と削除時に、それを置き換える値を再度削除することはできません。unset関数を使用して配列に穴が開いているためです。

私のフォームでは、値を に設定しました$i

<input name='index_to_remove' type='hidden' value='" . $i . "' />

そして、これでフォームを処理します:

コメントアウトされた行は、私が試して惨めに失敗したものです。私はこれに絞り込みました: インデックスは削除され、その後完全になくなっているため、未設定の配列項目を置き換える新しい値を再度削除することはできません。

原因で、アレイに穴があると思います

何を追加すればよいかわかりませんが、array_splice を使用する必要があると思うので、ユーザーがアイテムを削除してから同じアイテムを再度削除しようとすると、常に削除されます。助けてください。

0 投票する
3 に答える
6955 参照

javascript - angularjsのリストから特定の行を削除する方法

どこでも検索しましたが、リストから正しい行を削除する際に問題がある解決策が見つかりませんでした。

たとえば、以下の配列があります。

次のコードを使用して、ID = 13 (ID はノード サーバーから受信されます) の行を削除しようとしています。

しかし、これは正しい行を削除しません。

パラメータを指定して、次のように正しい行を削除するにはどうすればよいですか。

0 投票する
3 に答える
14177 参照

javascript - map 関数内で splice を呼び出す

私は次のコードを持っています:

しかし、call は 2 回しか表示されず、3 回表示されることを期待しています。splice配列が台無しになっていることは知っていますが、この動作の回避策はありますか?

ありがとうございました!