摘要:本文向您介绍Node.js扩展模块——Hashish。Hashish是JavaScript的一个Hash组合子库,换句话说,它包含了一系列数据结构操作功能。希望阅读本篇文章以后大家有所收获,帮助大家对Node.js的理解更加深入。
本文向您介绍Node.js扩展模块——Hashish。Hashish是JavaScript的一个Hash组合子库,换句话说,它包含了一系列数据结构操作功能。
例如:
1. var Hash = require('hashish'); 2. 3. Hash({ a : 1, b : 2, c : 3, d : 4 }) 4. .map(function (x) { return x * 10 }) 5. .filter(function (x) { return x < 30 }) 6. .forEach(function (x, key) { 7. console.log(key + ' => ' + x); 8. }) 9. ;
这里的Hash构造是{ a : 1, b : 2, c : 3, d : 4 };接下来,映射一个函数,每个Hash值乘以10,这时Hash演变成{ a : 10, b : 20, c : 30, d : 40 };然后进行筛选,过滤掉低于30的值,此时Hash为{ a : 10, b : 20 },最后,forEach将操作每个实用的值,输出值为:
1. a => 10
2. b => 20
请注意,这里Hash可操纵每一个节点,所有的组合都可以在一起,让你的代码保持完美。
假如你不能或者不想用连接功能,hashish还可以每个链接的形式附加在Hash上。以这样的形式:
1. var Hash = require('hashish'); 2. var obj = { a : 1, b : 2, c : 3, d : 4 }; 3. 4. var mapped = Hash.map(obj, function (x) { 5. return x * 10 6. }); 7. 8. console.dir(mapped);
注意,在obj hash上的代码称之为Hash.map。用Hash输出的值乘10:
{ a: 10, b: 20, c: 30, d: 40 }
在Hash.xxx链接里Hashish还能提供界面和功能的各种属性。比如:
1. $ node 2. > var Hash = require('hashish'); 3. > var obj = { a : 1, b : 2, c : 3, d : 4 }; 4. > 5. > Hash(obj).keys 6. [ 'a', 'b', 'c', 'd' ] 7. > Hash(obj).values 8. [ 1, 2, 3, 4 ] 9. > Hash(obj).length 10. 4
当然,你可以通过npm安装hashish:
1. npm install hashish
本文由职坐标整理发布,更多相关知识,请关注职坐标WEB前端Node.js频道!
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号