码迷,mamicode.com
首页 > 其他好文 > 详细

Prototype使用Hash对象

时间:2016-05-13 00:12:32      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:

1.前言

Hash对象大致有如下方法:

1)        clone():复制已有的Hash对象,返回复制产生的新Hash对象。

2)        each(iterator):遍历Hash对象里每个key-value对象的迭代器,其中iterator是一个形如function(pair){}的函数,其中pair就是Hash对象的key-value对象。

3)        get(key):根据key返回value,与Java Map的get()方法基本相似。

4)        inspect():返回字符串显示Hash对象的key-value对,类似于Java Map的toString()方法。

5)        keys():返回Hash对象的全部key组成的数组。

6)        values():返回Hash对象的全部value组成的数组。、

7)        merge(otherHash):将新的Hash对象合并到原有的Hash对象,返回新的Hash对象。

8)        set(key, value):设置一对key-value对,类似于Java Map的put()方法。

9)        toObject():将Hash对象转换成一个JavaScript对象,其实Hash对象和JavaScript都是key-value对,因此可以非常方便地相互转换。

10)    toQueryString():将Hash对象转换成为查询字符串,这种查询字符串以‘key1= value1&key2=value2’的形式出现。

11)    unset(key):删除key所对应的key-value对,执行该方法后返回key所对应的value。

12)    update(object):使用object更新当前Hash对象。

2.例子 

<!DOCTYPE html>
<html>
<head>
	<meta name="author" content="OwenWilliam" />
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title> Hash对象 </title>
</head>
<body>
<script src="../../prototype.js" type="text/javascript">
</script>
<script type="text/javascript">
// 定义一个JavaScript对象
var person = 
{
	name:'owen',
	age:29
};
// 将JavaScript对象转换成Hash对象
var h = $H(person);
// 将Hash对象转换成查询字符串。输出:name=owen&age=29
document.writeln(h.toQueryString() + "<br />");
// 测试merge方法
var person = 
{
	name:'owen',
	age:29
};
var teacher = 
{
	name:'owen.william',
	gender:'male'
};
// 将后一个Hash对象merge到前一个Hash对象中
var h = $H(person).merge($H(teacher));
// 输出:name=owen.william&age=29&gender=male
document.writeln(h.toQueryString() + "<br />");
// 直接使用JavaScript对象来更新Hash对象
h.update({age : 30 , subject :"java"});
// 将输出:name=owen.william&age=30&gender=male&subject=java
document.writeln(h.toQueryString() + "<br />");
// 遍历Hash对象的每个key-value对
h.each(function(pair)
{
	document.writeln(pair.key + "-->" + pair.value + "<br />");
});
</script>
</body>
</html>

3.运行结果

技术分享

Prototype使用Hash对象

标签:

原文地址:http://blog.csdn.net/owen_william/article/details/51344741

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!