![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js-array
iteye_2245
这个作者很懒,什么都没留下…
展开
-
关于array的性能优化
/**keys-get a array contains all the keys in object**@function**@param {Object} source**@return {Array}**/ZYC.object.keys = function(source){ var result=[],key,_length=0; for...原创 2011-08-31 10:38:43 · 133 阅读 · 0 评论 -
YUI研习--Array篇
前言: 关于array相关的api其实已经研习比较了多个框架的了,期间也看过部分YUI的源码,一直没有开一个分类去吧YUI,关于YUI,其实自己一直觉得没有一个完备的官方中文文档(官网的文档写的过于笼统)去推广,但是很多的公司前端框架的原型还是从YUI中衍生或者变形而来,学习一下还是有收获的。 注释:本分类所有取的YUI的源码版本为3.4.0 ...2012-05-06 21:08:16 · 102 阅读 · 0 评论 -
JavaScript1.8.5新特性系列Array.isArray
以前也写过一篇常见判断isArray, 在JavaScript1.8.5中还引入了Array.isArray这个api ------- 返回一个Boolean的值,如果是array返回true,否则false /*@param obj 检测的obj*/Array.isArray(obj)/*简单举例*/Array....2012-05-08 14:14:05 · 118 阅读 · 0 评论 -
array的concat()
concat()方法 ------- 用于连接两个或多个数组。 该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。 /*@param item 一个或多个@return 包含array的浅复制,将1个或多个参数item附加在其后,如果参数是数组,它的每一个元素会分别添加*/array.concat...2012-05-27 18:23:48 · 143 阅读 · 0 评论 -
array的pop()
pop()方法 ------- 删除并返回数组的最后一个元素。 如果array是空的,返回undefined array.pop(); 举例: var arr = [1,2,3,4,5];arr.pop(); //5console.log(arr); //[1,2,3,4] ...2012-05-27 19:11:06 · 394 阅读 · 0 评论 -
array的unshift
Array unshift方法 ------------ 向数组的开头添加一个或更多的元素,返回新的长度。 /*@param newelement1 必须@param newelement2 可选*/arrayObject.unshift(newelement1,newelement2.....) 返回值: arrayO...2012-06-28 18:09:47 · 96 阅读 · 0 评论 -
array的reduce
ES5 (js 1.8)加入了 reduce 接收一个函数,然后从左到右遍历item,直到reduce到一个值。 arr.reduce(callback, [initialValue]); 参数: callback(previousValue, currentValue, index, array)previousValue...原创 2014-04-27 20:12:02 · 83 阅读 · 0 评论 -
删除数组的偶数项
问题:要删除指定数组中偶数索引的item? -----------------------------------------------------------分割线------------------------------------------------- 开始思考: 数组中删除用什么? splice有木有!!!(不了解?忘记了参数?直接点...2013-01-06 17:04:45 · 4200 阅读 · 0 评论 -
underscore的数组操作之difference
difference _.difference(array,*others) //example_.difference([1,2,3,4,5],[5,2,10]); //[1,3,4] --------- 和without类似,但是它返回的是: 拿第一个参数数组的元素去其他数组区别比较,返回的就是...原创 2013-02-26 11:04:57 · 203 阅读 · 0 评论 -
underscore的数组操作之first与last
first (居然还有两个别名:head,take) _.first(array,[n]) ------- 返回array(数组)的第一个元素。传入的参数n将返回数组中从第一个元素开始的n个元素。 实例: 注释: 如果不传n参数,返回的是一个字符串如果n为&g...原创 2013-02-26 13:21:40 · 270 阅读 · 0 评论 -
underscore之size
size _.size(list) ------- 返回list(数组or对象)的长度 先看一下源码: /* * @name size * @param {Array | Object} obj * @info 如果是对象依赖_.keys去算length*/_.size = function...原创 2013-02-28 17:29:10 · 227 阅读 · 0 评论 -
qwrap-hashset之union
本文开始载入qwrap的几个hashset相关的union: 思路: 新建一个局部变量ra,第一个arr不动遍历第二个arr2,看第一个arr是否含有相同的item,如果没有存在ra里面arr来concat /** *@name union 两个数组的并集 *@param arr *@param arr2 */u...原创 2013-04-25 17:43:27 · 171 阅读 · 0 评论 -
[]的二义性
先看一道题: //a赋值的是[undefined]var a = [[1][1]]; 解释过程: var arr = [1];//因为arr的长度为1,所以arr[1] == undefinedvar a = [arr[1]]; 明白了我们再来看个: var a = [[1,2,3][2]];/...原创 2013-06-06 19:43:45 · 128 阅读 · 0 评论 -
array中最后一个空元素的差异
本文来自w3help的一篇《SJ2007: IE6 IE7 IE8 不会忽略数组直接量的末尾空元素》 个人做了一些笔记回顾,感谢作者! 其实很多人都知道: [1,2,3,].length//IE 4//非IE 3 但是不一定知道原理: IE遵循的是ECMAScript第三版: ...原创 2013-06-05 16:53:55 · 120 阅读 · 0 评论 -
array的slice()
JavaScript slice() 方法 -----提取字符串的某个部分,并以新的字符串返回被提取的部分。(浅复制) /*@start ---开始的下标@end --- 可选,默认是数组的长度两个参数中任何一个是负数,array.length将和它们相加使它们返回非负数如果start 大于等于array.length 返回一个新的空数组----第一...原创 2012-03-12 13:52:54 · 81 阅读 · 0 评论 -
jQuery源码浅谈系列---工具方法$.merge与$.unique
很多人在使用jquery的时候应该多会有array去重或者合并的需求吧,那么你一定对$.merge和$.unique不会陌生吧。 1.$.merge----------其实这个功能只是合并两个数组,返回的是array,包含第一个数组的元素后面跟着第二个数组元素 ps:这个不会去重复。 上源码:/*原理其实还是比较简单i是第一个数组的lengthl是第二个数组的l...2011-09-30 13:07:43 · 160 阅读 · 0 评论 -
array的indexOf
整理了一些设计Grid时候依赖产生的api思考,开始发布 需求是这样的: 1.设计前我定义了选中行的属性selectedRows是一个[],用来存放所有选中行的index信息,方便后面的选中和取消选中等相关操作。 2.现在你设计选中行和取消选中行的时候,你一定会判断当前的rowIndex是否在这个数组selectedRows里面,但是我们知道没有原生的api去支持这个arr...2011-10-14 13:51:03 · 167 阅读 · 0 评论 -
关于数组清空的方式
这个话题的开启是看帖子的时候觉得可以记录一下。 简单记录,学习一下 数组清空----------这个话题先从我的凤凰组件库phoenix.array.js的当初设计整理一样。 /*先看看prototype.js@version 1.6.0*/Object.extend(Array.prototype,{ clear:function(){...2011-10-17 12:54:17 · 246 阅读 · 0 评论 -
array的shift()
array的原生api------shift() 移除数组的第一个元素 并返回该元素 如果是空数组,返回undefined 通常比pop慢很多var arr = [0,1,2,3];console.log(arr.shift()); //0console.log(arr); ...2011-10-22 13:04:20 · 134 阅读 · 0 评论 -
js中Array对象的push()
每一个写过js的应该多用过push()把。可是最近遇到一个真实的需求: 我们的ui组件是基于jquery开发的,在显示列表中我现在需要在选中行的下面增加我新插入的一行数据。所以行数据集多放在一个array对象中,现在我可以获取到选中行的一些信息。但是如果我直接调用push()的话,新增的数据集会跑到array的最后一个。 定义和用法push() 方法可向数组的末尾添加一个...原创 2011-03-31 13:40:19 · 1143 阅读 · 0 评论 -
array的扩展api设计hash
有的时候我们需要将两个数组合并成类似HashMap结构的对象,这个对象的组成是把第一个数组作为key,第二个数组作为value 说明:第一个参数是必须的,第二个参数如果未定义的话,目前可以设置为true(或者你认为的其他值)。 简单讲述一下思想吧: 1、因为返回值的是一个对象,预先定义一个返回的obj ...2012-02-24 10:41:46 · 76 阅读 · 0 评论 -
关于各大前端框架对数组元素的遍历api设计
api的使用场景是针对数组进行遍历。 1.先看看tangram思想的做法: /**each-traverse all the element in array **@function**@param {Array} source---the array**@param {Function} iterator---it has two params(it...2012-03-09 16:01:17 · 80 阅读 · 0 评论 -
js-Array对象
JavaScript Array对象 ------用于在单个的变量中存储多个值。 1、创建Array对象: new Array();new Array(size); //size是设置的数组元素的个数。返回的数组的length就是sizenew Array(element0,element1......); //返回的数组的length...原创 2012-03-09 17:10:20 · 114 阅读 · 0 评论 -
array的splice
简单说说-----array的splice() 1、前言: splice的英文翻译是铰接,粘接。 2、定义和用法: 用于插入、删除或替换数组的元素。 3、语法: /*@param start ----必需|从数组元素移除元素的开始位置@param deleteCount ----要移除的元素的个数...2012-03-09 17:47:37 · 69 阅读 · 0 评论 -
移除数组的某一项remove
api的使用场景是移除数组中某一个指定的项 关于splice的一些资料:http://zhangyaochun.iteye.com/blog/1448006 /**remove-remove the element from the array**@param {Array} source---the array**@param element---the ele...原创 2012-03-10 13:40:25 · 446 阅读 · 0 评论 -
prototype的解读之Array
整理部分prototype的Array相关的api 1、first() 原api的用途: Returns the first item in the array,or undefined if the array is empty. 返回数组的第一项或者当数组为空时,返回undefined 用例: ["zhang","yao...2012-03-12 12:41:08 · 494 阅读 · 0 评论 -
qwrap-hashset之intersect
本文开始载入qwrap的几个hashset相关的intersect: /** *@name intersect 两个数组的交集 *@param arr *@param arr2 * / intersect:function(arr,arr2){ //定义一个空数组 var ra = [];...原创 2013-04-25 18:55:40 · 156 阅读 · 0 评论