JavaScript中创建字典对象(dictionary)的实例
来源:才华咖 本文已影响2.84W人
来源:才华咖 本文已影响2.84W人
对于JavaScript来说,其自身的Array对象仅仅是个数组,无法提供通过关键字来获取保存的数据,jQuery源码中提供了一种非常好的方式来解决这个问题,先看一下源码:
复制代码 代码如下:
function createCache() {
var keys = [];
function cache(key, value) {
// Use (key + " ") to avoid collision with native prototype
// properties (see Issue #157)
if ((key += " ") > eLength) {
// Only keep the most recent entries
cache[t()];
}
return (cache[key] = value);
}
return cache;
}
上述源码是创建一个编译结果的缓存,代码调用方式如下:
复制代码 代码如下:
var codecache = createCache();
源码中,keys用来保存键,而cache对象用来保存键值对,并通过全局变量eLength控制键的最大数量,若超过该数量,则自动删除第一个键及键值对。
本代码利用了闭包的`结构,使外部代码无法访问到keys变量,这样就能确保keys变量的安全性。当然,由于JavaScript语句的特点,外部代码还是可以通过修改cache属性使键与键值对不匹配。不过,只要不故意恶搞,这本身应该也没有太大的关系。
当然,它也不能宣誓一个完善的dictionary对象,因为其未提供主键重复的判断等关键功能,有兴趣的朋友们可以完善它。
英语阅读:VIT declines to acquire Ang Mo Kio property
javascript之Function对象学习小结
JavaScript如何实现JSON.stringify
javascript中String对象的slice()方法
JavaScript在Android的WebView中parseInt函数转换不正确
My Happy Times During Winter Vacation初中英语作文
javascript中toString()的用法
关于JavaScript中isPrototypeOf函数作用和使用实例
万恶的function在javascript中的运用实例分析
关于javascript中encodeURI和decodeURI的使用方法
私家车的坏处The Disadvantages of Private Cars英语作文
初中英语写作范文:My Happy Times During Winter Vacation
高中英语作文:My approach to difficulties in learning
JavaScript高级程序设计:本地对象Array
关于javascript中cookie对象用法的实例分析
关于My Winter Vacation Plans为题目的作文
JavaScript中Cookie操作实际案例
托福英语写作范文:Examinations exert a pernicious influence on educat
,javascript break和continue区别
关于Applying For A Student Discount Card的留学英语口语
The relationship between theory and practice大学英语作文
JavaScript中创建字典对象(dictionary)的实例
四级作文:Create a Conservation-Oriented Campus
全国基层党建创新典型案例
javascript中(function{})()写法解析
JavaScript里四舍五入函数round的用法实例
关于JavaScript学习笔记之Cookie对象
My Winter Vacation Plans初中英语作文
英语美文阅读:Kerry: Anti-IS Coalition Could Contribute to B
Chinas Liu to seek injury advice in US soon英语作文
Javascript中arguments对象的详解和使用方法
英语作文International Day of Peace Vigil
Time To Stop Worrying About Invasive Species美文欣赏
Should Private Cars Be Encouraged in China高中英语作文
javascript中Function类型详细介绍
A Letter to Univsity Pesident about the Canteen Service on C
Young Actors Are Criticized大学英语作文
文明创建口号的例子
服务社区吸毒康复对象典型案例
JavaScript中Function函数