まず、属性に関するいくつかのメソッドを簡単に紹介します。
属性の列挙:
for/in ループは、オブジェクトの属性を走査するメソッドです。たとえば、
var obj = {
名前 : 'obj1 ',
年齢 : 20,
身長 : '176cm'
}
var str = '';
for(obj の変数名)
{
str = name ':' obj[name] 'n';
}
alert(str);
出力は次のようになります: name:obj1
年齢:20
身長: 176cm
属性が存在するかどうかを確認する:
in 演算子を使用して、属性が存在するかどうかをテストできます。
this.containsKey = function ( key )
{
return (キーを入力);
}
属性の削除
オブジェクトの属性を削除するには、削除演算子を使用します。 delete を使用すると、プロパティは for/in によって列挙されなくなり、in 演算子によって検出されなくなります。
削除エントリ[キー];
削除obj.name;
ハッシュテーブルのJS実装メソッドは次のとおりです:
function HashTable()
{
var size = 0;
varentry = new Object(); >this.add = 関数 (キー , 値)
{
if(!this.containsKey(key))
{
サイズ ;
}
エントリ[キー] = 値;
}
this.getValue = 関数 (キー)
{
return this.containsKey(key) : null; ( key )
{
if( this.containsKey(key) && ( delete エントリ[key] ) )
{
size --;
this .containsKey = function ( key )
{
return (entry の key)
}
this.containsValue = function ( value )
{
for(var prop inentry );
{
if(entry[prop] == value)
{
return true;
}
}
return
}
this 。 getValues = function ()
{
var 値 = new Array();
for(エントリの var prop)
{
values.push(entry[prop]) ;
}
戻り値;
}
this.getKeys = function ()
{
var key = new Array();
{
keys.push(prop);
}
キーを返す;
}
this.getSize = function ()
{
サイズを返す>}
this.clear = function ()
{
size = 0;
entry = new Object();
}
}
テスト:
コード
コードをコピー
コードは次のとおりです:
="http:// www.w3.org/1999/xhtml"> /title> ;
>JavaScript ハッシュテーブル実装コード
http://www.jb51.net/article/20372.htm