kameoyaji_2回答ポイント 200ptウォッチ 1

javascriptで配列の値が変更されたことを検出する方法はないでしょうか?


javascriptをあまり理解していない物ですが、配列に値を設定した時を検出したいと考えています。

下記のソースを組んでみました。(実際には、期待した動作を行うわけではないですが)

function testfunc() {
Object.defineProperties(this, {
items: {
get: function (index) {
(typeof(this._items) == "undefined"){
this._items = {};
}
alert(["get",index]);
this._items;
},
set: function (index,val) {
alert(["set",index]);
this._items[idx] = val;
},
configurable: true,
enumerable: true

});
}

var aa = new testfunc();
aa.items[0] = "123";


実現したいことは、
・配列に値を追加する時を検出。
・配列の値を変更する時を検出。

検出した時点で、設定する値が、他の配列にすでにある時には、
throwさせたり、alertさせたりして、配列への追加を抑制したいと考えています。

javscriptで、こんな考えが出来る、できないを含めてご指導頂ければ幸いです。
(標準化して、使いまわししたいもので、クラス化しています、
ゴリゴリ組めばできるということはわかっています。)

※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
ログインして回答する

ベストアンサー

その他の回答

この質問へのコメント

コメントはありません

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2013-12-29 19:08:00
終了日時
2014-01-05 19:10:04
回答条件
1人5回まで

この質問のカテゴリ

この質問に含まれるキーワード

JavaScript2781AA181標準化32配列924

人気の質問

メニュー

PC版