Array.slice()与Array.splice()的返回值类型


Posted in Javascript onOctober 09, 2006

最近做个练习,用到Array.slice()和Array.splice(),以前没有注意其返回值类型
Array.slice()返回Array -- 一个由原始数组中某一范围的元素构成的数组。
Array.splice()返回Array -- 包含从原始数组中删除的元素的一个数组。
返回的是一个数组,用typeof()看一下是object,这没错!需要提醒大家的是:
当数组元素是数字时,用Array.slice()和Array.splice()取其中某个元素进行大小比较,可得要注意,必须转换
类型,这个很隐蔽,出错后很难查的
object类型不可以用Number()直接转换成number,需要先toString()/8@$
如:

var arr = [0, 1, 2];
var arr1 = [1, 2, 3];
for (var i = 0; i < arr.length; i++) {
trace (arr.slice (i,i+1)+"--"+typeof (arr.slice (i,i+1)));
//output--0--object.....
trace (arr1.slice (i,i+1)+"--"+typeof (arr1.slice (i,i+1)));
//output--1--object....
trace (arr.slice (i,i+1)<arr1.slice (i,i+1));
//output--false,,,,object不可比较大小
trace (arr.slice (i,i+1)>arr1.slice (i,i+1));
//output--false,,,,object不可比较大小
trace (Number(arr.slice (i,i+1))<Number(arr1.slice (i,i+1)));
//output--undefined,,,,object不可用Number()转换类型
trace (Number(arr.slice (i,i+1).toString())<Number(arr1.slice (i,i+1).toString()));
//output--true,先toString()再Number()就可以
}

trace (arr.slice (i,i+1)<arr1.slice (i,i+1));
trace (arr.slice (i,i+1)>arr1.slice (i,i+1));
写成


trace (arr.slice (i,i+1)[0]<arr1.slice (i,i+1)[0]);
trace (arr.slice (i,i+1)[0]>arr1.slice (i,i+1)[0]);
也可以

Javascript 相关文章推荐
JavaScript 监听textarea中按键事件
Oct 08 Javascript
js实现addClass,removeClass,hasClass的函数代码
Jul 13 Javascript
Javascript 运动中Offset的bug解决方案
Dec 24 Javascript
JavaScript实现动态添加,删除行的方法实例详解
Jul 02 Javascript
七个不允许错过的jQuery小技巧
Dec 21 Javascript
javascript实现用户点击数量统计
Dec 25 Javascript
input获取焦点时底部菜单被顶上来问题的解决办法
Jan 24 Javascript
Node.js  事件循环详解及实例
Aug 06 Javascript
React Native之TextInput组件解析示例
Aug 22 Javascript
angular 内存溢出的问题解决
Jul 12 Javascript
基于jQuery实现可编辑的表格
Dec 11 jQuery
vue实现登录功能
Dec 31 Vue.js
实例:尽可能写友好的Javascript代码
Oct 09 #Javascript
splice slice区别
Oct 09 #Javascript
获取DOM对象的几种扩展及简写
Oct 09 #Javascript
js几个不错的函数 $$()
Oct 09 #Javascript
使用Javascript和DOM Interfaces来处理HTML
Oct 09 #Javascript
激活 ActiveX 控件
Oct 09 #Javascript
自动更新作用
Oct 08 #Javascript
You might like
对盗链说再见...
2006/10/09 PHP
用PHP和ACCESS写聊天室(七)
2006/10/09 PHP
PHP 面向对象 PHP5 中的常量
2010/05/05 PHP
PHP程序员不应该忽略的3点
2015/10/09 PHP
Smarty模板简单配置与使用方法示例
2016/05/23 PHP
PHP7下协程的实现方法详解
2017/12/17 PHP
thinkphp中U方法按路由规则生成url的方法
2018/03/12 PHP
从零开始学习jQuery (四) jQuery中操作元素的属性与样式
2011/02/23 Javascript
如何使用jquery动态加载js,css文件实现代码
2013/04/03 Javascript
JavaScript之Object类型介绍
2015/04/01 Javascript
jquery编写Tab选项卡滚动导航切换特效
2020/07/17 Javascript
jQuery 更改checkbox的状态,无效的解决方法
2016/07/22 Javascript
JavaScript轮播停留效果的实现思路
2018/05/24 Javascript
Nodejs调用Dll模块的方法
2018/09/17 NodeJs
VUE中使用MUI方法
2019/02/12 Javascript
详解关闭令人抓狂的ESlint 语法检测配置方法
2019/10/28 Javascript
vue组件实现移动端九宫格转盘抽奖
2020/10/16 Javascript
[47:03]Ti4第二日主赛事败者组 LGD vs iG 2
2014/07/21 DOTA
[59:30]完美世界DOTA2联赛PWL S3 access vs LBZS 第二场 12.20
2020/12/23 DOTA
Python日期操作学习笔记
2008/10/07 Python
python中的错误处理
2016/04/10 Python
Python实现统计代码行的方法分析
2017/07/12 Python
python Event事件、进程池与线程池、协程解析
2019/10/25 Python
基于tensorflow指定GPU运行及GPU资源分配的几种方式小结
2020/02/03 Python
Python使用urlretrieve实现直接远程下载图片的示例代码
2020/08/17 Python
Python命令行参数定义及需要注意的地方
2020/11/30 Python
html5-Canvas可以在web中绘制各种图形
2012/12/26 HTML / CSS
俄罗斯三星品牌商店:Samsungstore
2020/04/05 全球购物
趣味比赛活动方案
2014/02/15 职场文书
初中升旗仪式演讲稿
2014/05/08 职场文书
数学兴趣小组活动总结
2014/07/08 职场文书
民警群众路线教育实践活动对照检查材料
2014/10/04 职场文书
《青山不老》教学反思
2016/02/22 职场文书
浅析Python中的随机采样和概率分布
2021/12/06 Python
CSS中实现动画效果-附案例
2022/02/28 HTML / CSS
Github 使用python对copilot做些简单使用测试
2022/04/14 Python