Array的队列方法&重排序方法—— JS学习笔记2015-6-27(第68天)
2015-06-27 23:45
706 查看
队列方法
相对于栈数据结构的后进先出【LIFO】访问规则,队列数据结构的访问规则是先进先出【FIFO】
这里提到一个方法 shift(); 它能够移除数组中的第一个项,并返回该项,同时将数组长度减1;// 有点像pop()
实例:
var colors = ['red','green'];
var item = colors.shift();
alert(colors); // green
alert(item); // red
alert(colors.length) // 1;
同时也提供了一个unshift()方法;
用法和shift() 相反;
shift()和unshift() 操作的对象都是数组的首项; // push()和pop()的操作都是针对数组的尾部;
unshift返回的数组的长度;
重排序方法
reverse()方法 是反转数组原来的顺序;
sort() 方法 是按照升序排列数组项,它是会调用数组的toString() 方法,然后比较得到的字符串,以确定如何排序, 注意:即使数组中的每一项值都是数字,sort()方法比较的也是字符串;
sort()方法可以接收一个比较函数作为参数,以便指定哪个值位于哪个值前面;
规则是: 比较函数接收的2个参数,如果第一个参数应该位于第二个之前则返回一个负数;
如果2个参数相等,则返回0;
如果第一个参数应该位于第二个之后则返回一个正数;
View Code
相对于栈数据结构的后进先出【LIFO】访问规则,队列数据结构的访问规则是先进先出【FIFO】
这里提到一个方法 shift(); 它能够移除数组中的第一个项,并返回该项,同时将数组长度减1;// 有点像pop()
实例:
var colors = ['red','green'];
var item = colors.shift();
alert(colors); // green
alert(item); // red
alert(colors.length) // 1;
同时也提供了一个unshift()方法;
用法和shift() 相反;
shift()和unshift() 操作的对象都是数组的首项; // push()和pop()的操作都是针对数组的尾部;
unshift返回的数组的长度;
重排序方法
reverse()方法 是反转数组原来的顺序;
sort() 方法 是按照升序排列数组项,它是会调用数组的toString() 方法,然后比较得到的字符串,以确定如何排序, 注意:即使数组中的每一项值都是数字,sort()方法比较的也是字符串;
sort()方法可以接收一个比较函数作为参数,以便指定哪个值位于哪个值前面;
规则是: 比较函数接收的2个参数,如果第一个参数应该位于第二个之前则返回一个负数;
如果2个参数相等,则返回0;
如果第一个参数应该位于第二个之后则返回一个正数;
function compare(a, b){ if (a<b) { return 1; }else if (a>b) { return -1; }else { return 0; } } var arr = [0,1,5,-10,15] arr.sort(compare); alert(arr); // 15,5,1,0,-10;
View Code
相关文章推荐
- js 函数的参数 问题 arguments对象 及闭包
- JavaScript语法 (顺序+判断+选择+循环+其他=五种语句)演示
- Web 开发的 JavaScript 框架资料收集(15款)
- 谈谈Ext JS的组件——布局的使用方法续二
- 谈谈Ext JS的组件――布局的使用方法续二
- 谈谈Ext JS的组件——布局的使用方法续二
- 谈谈Ext JS的组件——布局的使用方法续二
- 谈谈Ext JS的组件——布局的使用方法续二
- Js取数组中最大值和最小值
- JS~字符串长度判断,超出进行自动截取(支持中文)
- 纯JS实现房贷利率报表对比
- js——事件
- javascript运动的小Tip。
- js防刷新的倒计时
- JavaScript Date对象
- javascript代码实用方法实现
- JavaScript创建对象的几种方式
- JS中将控制台log输出显示到浏览器中
- [extjs] ExtJS 4.2 开发环境搭建
- js for循环绑定问题解决