問題タブ [arrayobject]

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 投票する
2 に答える
1051 参照

php - ArrayObject::STD_PROP_LIST を使用する理由

ArrayObject::STD_PROP_LIST フラグで ArrayObject を使用する例は見つかりません。 http://www.php.net/manual/en/arrayobject.setflags.php このフラグで ArrayObject を使用する例を教えてください。

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

jquery - $.each を使用した配列オブジェクトの作成が機能しない

JQGrid を使用してローカル テーブルを作成しようとしています。配列を変更するまではすべて正常に機能しています。作業コードは次のとおりです。

HTML コード:

JS コード

ここから実行することもできます: http://jsfiddle.net/bYQn6/2/

ここで、Obj 配列を次のように変更すると:

この「mydata」を印刷すると、上記の「mydata」とまったく同じように見えますが、機能しません:(

私は何を間違っていますか??

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

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

javascript - 変数プロパティでjsオブジェクトパラメータを使用する

次の配列があります。

これはphp配列です。(私はjsonエンコーディングを使用します)

今、私はテーブルを作成したいと思います。次のコードを使用しました。

var headers = data.searchEngineOrder;

上記のようにコード brands[x].keywordまたはbrands[x].Googleは機能しています。しかし、キーワードまたはグーグルを変数として使用した場合、それは機能しません。

私を助けてください。どうすればいいですか?

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

php - 関数の非互換性のオーバーライド

TL;DR

このようにオーバーライドoffsetSet($index,$value)したいのですが、致命的なエラーが発生します(「宣言は互換性が必要です」)。ArrayObjectoffsetSet($index, MyClass $value)

何となぜ

ArrayObjectすべての値を特定のオブジェクトに強制する子クラスを作成しようとしています。私の計画は、値を追加するすべての関数をオーバーライドし、それらに型ヒントを与えることでこれを行うことでした。MyClass

どのように

最初append($value);
のストップ: SPL から:

私のバージョン:

魔法のように機能するようです。

ここでこの作業の例を見つけることができます

2 番目の停留所:offsetSet($index,$value);

繰り返しますが、SPL から:

そして私のバージョン:

ただし、これにより、次の致命的なエラーが発生します。

致命的なエラー: Namespace\MyArrayObject::offsetSet() の宣言は、ArrayAccess::offsetSet() の宣言と互換性がある必要があります

この動作しないバージョンはこちらで確認できます

次のように定義すると、問題ありません。

この動作のバージョンはこちらで確認できます

質問

  1. offsetSet()上記のコードでオーバーライドが機能しないのはなぜappend()ですか?
  2. およびの定義にexchangeArray()nextの定義を追加すると、オブジェクトを追加するすべての関数を使用できますか?append()offsetSet()
0 投票する
3 に答える
3378 参照

php - ArrayObjectを使用すると、値を繰り返し処理しているときに値の設定を解除できません。

私はこの通知を受け取りました:

ArrayIterator :: next():配列がオブジェクトの外部で変更され、内部位置が/ var /www..で無効になりました。

これは、foreachループの開始時にこのコードによって生成されます。通知とともに、foreachループが繰り返し開始されます。つまり、このようなことが起こると、内部位置がリセットされます。しかし、phpマニュアルによると、ArrayObjectはデフォルトでArrayIteratorを使用しています。

そしてマニュアルはArrayIteratorについてこれを言います

このイテレータを使用すると、配列とオブジェクトを反復処理しながら、値とキーの設定を解除して変更できます。

ここで何かが足りませんか?ArratIteratorに関するバグレポートをいくつか見つけましたが、この種のものは見つかりませんでした。それはバグですか、それとも私の悪いですか?

バージョン:PHPバージョン5.3.10-1ubuntu3.4

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

javascript - オブジェクトの配列を並べ替えて重複エントリを排除する

私はこのオブジェクトの配列を持っています

いくつかのオブジェクト エントリが配列に追加された後

ArrTdsObjectsベースに格納されているオブジェクトの重複を排除したいcurTdID

意味: 大きい方のセル番号がそれを持っている場合、配列内の同じセルの最初のセルはId除外されますid

小さいインデックス番号の配列項目が大きいセル番号に存在する場合、配列に最後に追加された項目が保存されることを意味する場合、それらを削除するにはどうすればよいですか?

0 投票する
4 に答える
17979 参照

php - PHP の配列オブジェクトの値を検索する

このような配列があります.HOSP2のような特定の値を検索したい.インデックスで値を取得するプロセスは何ですか.

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

php - Spl、ArrayObject、ArrayObject :: STD_PROP_LIST

ドキュメントでSTD_PROP_LIST定数を理解しようとしていますが、これまでのところ理解できず、説明も見つかりませんでした:(ドキュメントには次の例があります。

どちらのプリントでも、まったく同じ結果が得られます。

この定数を使用するかどうかの違いは何ですか?

前もって感謝します!

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

php - ArrayIterator と ArrayObject の flags パラメータは何をしますか?

PHP のコンストラクターには、次のように文書化されArrayIteratorArrayObjectいるflagsパラメーターがあります。ArrayObject::setFlags()

ArrayObject::STD_PROP_LIST

オブジェクトのプロパティは、リスト (var_dump、foreach など) としてアクセスした場合、通常の機能を持ちます。

ArrayObject::ARRAY_AS_PROPS

エントリはプロパティとしてアクセスできます (読み取りおよび書き込み)。

ArrayIterator::setFlags() のドキュメントも同様です (違いは間違いです)。

これで、2 番目のフラグをよく理解できました。これにより、プロパティ アクセスと->配列アクセスが可能になり[]ます。

しかし、私は頭を包むことができませんArrayObject::STD_PROP_LIST。私がテストした限り、このフラグの有無にかかわらずまったく同じように動作しますvar_dumpforeachここで何が欠けていますか?

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

php - PHP 再帰的に ArrayObject を連想配列に変換する

こんにちは、コールバックして再帰的に anArrayobjectを連想配列に変換するメソッドがありますが、残念ながら致命的なエラーが発生しています

これが私の方法です

そして、これがサンプルですArrayObject