- 浏览: 2622335 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (1286)
- js-oop (2)
- js-window (10)
- js-event (19)
- js-string (37)
- js-array (27)
- js-page (4)
- js-dom (62)
- js-lang (8)
- js-number (7)
- js-platform (3)
- js-object (15)
- js-element (3)
- js-browser (7)
- js-url (6)
- js-date (10)
- css基础 (48)
- css优化 (15)
- html基础 (17)
- html标签 (19)
- js基础 (117)
- js-兼容性差异 (33)
- js引擎 (3)
- js性能 (14)
- json (6)
- jQuery源码浅析 (43)
- web mobile开发资料 (78)
- js跨域 (2)
- html5 (74)
- html5-canvas (7)
- css3 (53)
- 浏览器 (5)
- api设计学 (3)
- js-加载 (3)
- linux (37)
- 架构师 (1)
- php (2)
- self开发的脚本库--凤凰 (2)
- web应用名词 (6)
- javascript新特性翻译 (8)
- ajax (6)
- jQuery动画效果 (7)
- prototype的解读 (13)
- 优秀插件翻译 (1)
- css解决方案 (26)
- 数据库 (2)
- english daily (59)
- 浏览器内核探究 (1)
- jQuery插件介绍 (9)
- jquery基础篇 (26)
- chrome浏览器问题整理 (14)
- js选择器那些事 (3)
- 前端框架 (26)
- Firefox私有属性 (11)
- webkit私有属性集合 (17)
- 书籍推荐 (21)
- 数据结构 (1)
- 网站建设相关 (7)
- 好文翻译 (2)
- 个人作品 (3)
- kissy的解读 (4)
- css-layout(布局研究) (5)
- less研究 (1)
- YUI探究 (1)
- hash探究 (1)
- js动画 (7)
- 前端面试题 (37)
- css书写规范 (1)
- js模板引擎 (6)
- js模块化 (19)
- 编写高质量代码 (3)
- 性能探究--应用协议 (2)
- 前端图像处理 (19)
- Mac OS相关 (21)
- 正则表达式 (11)
- 离线应用相关 (0)
- 前端工具 (65)
- nodeJS (55)
- jquery优化篇 (2)
- 设计模式探究系列 (3)
- windows7 (2)
- IE10 (10)
- 微博开放平台探究 (2)
- 常用web服务接口 (1)
- 数据存储相关 (8)
- 零时文件 (2)
- jQuery Mobile (16)
- backbone (15)
- underscore (22)
- sass (11)
- android (3)
- phonegap (10)
- IE私有 (11)
- qwrap (8)
- git (14)
- chrome extensions (5)
- freemarker (11)
- angularJS (3)
- seo (2)
- markdown (3)
- css动画 (4)
- 安卓开发 (2)
- React (7)
- 活动页技术 (1)
- 网络安全 (3)
- grunt (7)
- Lo-Dash (3)
- 前端国际化 (4)
- 版本控制 (2)
- 盒模型 (4)
- 微信开发 (1)
- Mock数据工具 (1)
- sails (1)
- vim (1)
- js-color (1)
- iOS 基础 (43)
最新评论
-
jertom:
<div id="showInfo" ...
addEventListener等事件监听的参数细谈 -
乌托邦国王:
引用[u][/u]
css3动画属性系列之transform细讲移动translate -
hvang1988:
能提供附件下载吗,找不到js库,google封了访问不了
Syntaxhighlighter---代码高亮插件介绍 -
sscsacdsadcsd:
我的天 那到底是为什么function是object我看und ...
typeof func ==='function'的疑惑 -
wkjiangwk:
试了,没用,你们从不去测试。
介绍一下x-webkit-speech -------实现语音输入
前言:
关于array相关的api其实已经研习比较了多个框架的了,期间也看过部分YUI的源码,一直没有开一个分类去吧YUI,关于YUI,其实自己一直觉得没有一个完备的官方中文文档(官网的文档写的过于笼统)去推广,但是很多的公司前端框架的原型还是从YUI中衍生或者变形而来,学习一下还是有收获的。
注释:本分类所有取的YUI的源码版本为3.4.0
正文:
1、 hash
以前参照tangram整理过一个hash的api设计。
这边主要贴出YUI的写法,只是细节上有小差异。
/* @example: Y.Array.hash(['A','B','C'],['a','b']) {'A':'a','B':'b','C':true} */ YArray.hash = function(keys,values){ var hash = {}, vlen = (values && values.length) || 0, //这边给了一个默认值0 i,len; for(i=0,len = keys.length;i<len;i++){ //加了一个判断 if(i in keys){ hash[keys[i]] = vlen > i && i in values ? values[i] : true; } } return hash; }
2、indexOf
关于1.6特性的indexOf
以前整理的一个indexOf的api
var Native = Array.prototype; YArray.indexOf = Native.indexOf ? function(array,value){ //没有支持参数fromIndex return Native.indexOf(array,value); } : function(array,value){ for(var i =0,len = array.length,i<len;i++){ if(array[i] == value){ return i; } } return -1; };
3、each
前面整理的each的api
var Native = Array.prototype; YArray.each = YArray.forEach = Native.forEach ? function(array,fn,thisObj){ Native.forEach.call(array || [],fn,thisObj || Y); return Y; } : function(array,fn,thisObj){ for(var i= 0,len = (array && array.length) || 0;i<len;i++){ if(i in array){ //可以加上返回值判断进行循环的break fn.call(thisObj || Y , array[i],i,array); } } return Y; };
4、numericSort
/* @example [42, 23, 8, 16, 4, 15].sort(Y.Array.numericSort); => [4, 8, 15, 16, 23, 42] @mark 个人感觉这个api使用度不是那么高 */ YArray.numericSort = function(a,b){ return a -b; };
发表评论
-
array的reduce
2014-04-27 20:12 3567ES5 (js 1.8)加入了 reduce ... -
[]的二义性
2013-06-06 19:43 1063先看一道题: //a赋值的是[und ... -
array中最后一个空元素的差异
2013-06-05 16:53 1465本文来自w3help的一篇《SJ2007: ... -
qwrap-hashset之intersect
2013-04-25 18:55 1346本文开始载入qwrap的几个hashset相 ... -
qwrap-hashset之union
2013-04-25 17:43 1434本文开始载入qwrap的几个hashset相 ... -
underscore之size
2013-02-28 17:29 1537size _.size(l ... -
underscore的数组操作之first与last
2013-02-26 13:21 1464first (居然还有两个别名:he ... -
underscore的数组操作之difference
2013-02-26 11:04 2057difference _.di ... -
删除数组的偶数项
2013-01-06 17:04 4056问题:要删除指定数组中偶数索引的item? ----- ... -
array的unshift
2012-06-28 18:09 1189Array unshift方法 ------ ... -
array的pop()
2012-05-27 19:11 1523pop()方法 ------- 删除并返回 ... -
array的concat()
2012-05-27 18:23 2142concat()方法 ------- 用于连接 ... -
JavaScript1.8.5新特性系列Array.isArray
2012-05-08 14:14 1744以前也写过一篇常见判断isArray, 在JavaS ... -
YUI研习--Array篇
2012-05-06 20:30 3前言: 关于array相关的api其实已经 ... -
array的slice()
2012-03-12 13:52 1641JavaScript slice() 方法 -- ... -
prototype的解读之Array
2012-03-12 12:41 1617整理部分prototype的Array相关的api 1 ... -
移除数组的某一项remove
2012-03-10 13:40 1616api的使用场景是移除数组中某一个指定的项 关于spl ... -
array的splice
2012-03-09 17:47 1786简单说说-----array的splice() 1、前 ... -
js-Array对象
2012-03-09 17:10 1453JavaScript Array对象 - ... -
关于各大前端框架对数组元素的遍历api设计
2012-03-09 16:01 1986api的使用场景是针对数组进行遍历。 1.先看 ...
相关推荐
**yuicompressor-maven-plugin详解** `yuicompressor-maven-plugin`是一款强大的Maven插件,主要用于优化前端资源,特别是JavaScript和CSS文件。这个插件是基于YUI Compressor,一个由Yahoo开发的开源工具,它能...
《yuicompressor-2.4.8.jar:前端优化与代码压缩的艺术》 在Web开发领域,优化前端性能是一项至关重要的任务,而yuicompressor-2.4.8.jar正是这样一款强大的工具,专为JavaScript代码压缩而设计,助力开发者实现...
yuicompressor-2.4.2.jar yuicompressor-2.4.7.jar jsZip.exe yuicompressor yui compressor js压缩工具 javascript压缩工具 css压缩工具 ------------------------------------ //压缩JS java -jar yui...
"eclipse yuicompressor-maven-plugin"是Maven生态系统中的一个插件,专门用于这个目的。下面将详细阐述这个插件的功能、用法以及它在Maven项目中的应用。 ### 1. Maven简介 Maven是一个强大的项目管理和综合工具,...
yuicompressor-maven-plugin, 用于压缩 (Minify/Ofuscate/Aggregate) Javascript文件和使用 YUI 压缩器的CSS文件的Maven 插件 [[Flattr this git repo] ( http://api.flattr.com/button/flattr-badge-large.png)]...
压缩JS所使用jar包!...压缩JS:java -jar yuicompressor-2.4.jar --type js xxx.js -o xxx.js --charset utf-8 压缩CSS:java -jar yuicompressor-2.4.jar --type css xxx.css -o xxx.css --charset utf-8
标题中的"webstorm_phpstorm_yuicompressor-2.4.8.jar"正是YUI Compressor的一个版本,适用于WebStorm和PhpStorm。这个文件是Java可执行的JAR包,包含YUI Compressor的核心压缩算法,可以处理并压缩JavaScript和CSS...
《深入理解YUI3:基于yui3-master.zip的探讨》 YUI(Yahoo! User Interface Library)是由雅虎公司开发的一套开源JavaScript库,它为Web开发者提供了丰富的功能和工具,以创建交互性强、性能优秀的网页应用。YUI3是...
JS压缩工具、前端优化神器、yuicompressor-2.4.8.jar、
用于压缩javascript脚本。 这个玩意,用来压缩JS文件。 jsMinifier为何物呢? jsMinifier是一个压缩JS文件的简单的工具,可以方便的集成到windowS中,使用winzip一样的去压缩JS文件(右键点击未压缩的JS文件,选择...
yuicompressor压缩js,css
该工具可以压缩js和css代码
yuicompressor.jar js/css压缩 //压缩JS java -jar yuicompressor-2.4.2.jar --type js --charset utf-8 -v src.js > packed.js //压缩CSS java -jar yuicompressor-2.4.2.jar --type css --charset utf-8 -v src...
【标题】"yui-yuidoc-yuidoc-50-529-gc631758" 指向的是一个关于 Yahoo User Interface Library (YUI) 和 YUIDoc 的特定版本或修订版。YUI 是一个开源的 JavaScript 库,提供了一系列模块化的工具,用于构建富有交互...