js操作数组函数实例小结


Posted in Javascript onDecember 10, 2015

本文实例讲述了js操作数组函数。分享给大家供大家参考,具体如下:

1.删除数组中指定的元素

/**
 * 参考实例
foreach = function (obj, insp){
if(obj== null && obj.constructor != Array){

return [];
}
//obj是要处理的数组,obj==null 表示对象尚未存在;obj.constructor != Array 表示对象obj的属性的构造函数不是数组;
//constructor属性始终指向创建当前对象的构造函数。两个条件均满足,则返回空数组[];
//下面对constructor属性作进一步了解。
var obj= [1, 2, 3, 4]; // 等价于 var obj= new Array(1, 2, 3, 4);
console.log(obj.constructor === Array); // 返回true 表明obj的构造函数为Array;
var foo= function() { }; // 等价于 var foo = new Function();
console.log(foo.constructor === Function); // 返回true 表明foo的构造函数为Function;
var obj = new Foo(); //由构造函数实例化一个obj对象
console.log(obj.constructor === Foo); // 返回true 表明obj的构造函数为Foo;
 */
//删除数组中指定的元素
function del(val, arr)
{
  //检测参数
  if (arr == null && arr.constructor != Array) {
    return [];
  }
  var newarr = []; //不存在的保存到新数组中
  for (var i = 0; i < arr.length; i++) {
    if (arr[i] != val)
      newarr.push(arr[i]);
  }
  return newarr;
}
alert(del(2, [1, 2, 3, 4, 5, 2]));

2.去除重复的元素

/**
 *去除数组中重复的元素
把元素的值存为一个新数组的key,key是不可以重复的,然后变量次数组即可
 */
function unique(data) {
  data = data || [];
  var a = {};
  len = data.length;
  for (var i = 0; i < len; i++) {
    var v = data[i];
    if (typeof(a[v]) == 'undefined') {
      a[v] = 1;
    }
  };
  data.length = 0;
  for (var i in a) {
    data[data.length] = i;
  }
  return data;
}
alert(unique([12,12,12,34]));

3.删除数组指定下标的元素

/**
 *删除数组的指定下标元素 
 *
 * i 的值是一直在变的,n的值是只有if条件成立的时候才会变(会依次递增)
 */
Array.prototype.remove=function(dx)
 {
  if(isNaN(dx)||dx>this.length){return false;}
  for(var i=0,n=0;i<this.length;i++)
  {
    if(this[i]!=this[dx])
    {
      this[n++]=this[i]
    }
  }
  this.length-=1
 }
var arr = [1,2,3,4,2,5];
alert(arr);
arr.remove(2);
alert(arr);

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
JS中引用百度地图并将百度地图的logo和信息去掉
Sep 29 Javascript
JQuery中操作Css样式的方法
Feb 12 Javascript
基于Vue.js的表格分页组件
May 22 Javascript
JavaScript解八皇后问题的方法总结
Jun 12 Javascript
javascript 玩转Date对象(实例讲解)
Jul 11 Javascript
ES6学习教程之Map的常用方法总结
Aug 03 Javascript
Node.js调用fs.renameSync报错(Error: EXDEV, cross-device link not permitted)
Dec 27 Javascript
图片懒加载imgLazyLoading.js使用详解
Sep 15 Javascript
详解Vue.js中.native修饰符
Apr 24 Javascript
JavaScript的级联函数用法简单示例【链式调用】
Mar 26 Javascript
js实现窗口全屏示例详解
Sep 17 Javascript
vue-simple-uploader上传成功之后的response获取代码
Sep 07 Javascript
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
Dec 10 #Javascript
jQuery自定义动画函数实例详解(附demo源码)
Dec 10 #Javascript
javascript图片预加载完整实例
Dec 10 #Javascript
JavaScript动态插入CSS的方法
Dec 10 #Javascript
jQuery实现监控页面所有ajax请求的方法
Dec 10 #Javascript
js表单提交和submit提交的区别实例分析
Dec 10 #Javascript
浅谈javascript中onbeforeunload与onunload事件
Dec 10 #Javascript
You might like
php中convert_uuencode()与convert_uuencode函数用法实例
2014/11/22 PHP
AJAX PHP无刷新form表单提交的简单实现(推荐)
2016/09/09 PHP
JavaScript prototype属性使用说明
2010/05/13 Javascript
最佳JS代码编写的14条技巧
2011/01/09 Javascript
JQuery调用WebServices的方法和4个实例
2014/05/06 Javascript
使用ajaxfileupload.js实现ajax上传文件php版
2014/06/26 Javascript
jQuery中val()方法用法实例
2014/12/25 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【一】
2016/05/10 Javascript
AngularJS+Bootstrap实现多文件上传与管理
2016/11/08 Javascript
js实现tab选项卡切换功能
2017/01/13 Javascript
深入理解JavaScript中的尾调用(Tail Call)
2017/02/07 Javascript
js运算符的一些特殊用法
2018/07/29 Javascript
JS中的算法与数据结构之链表(Linked-list)实例详解
2019/08/20 Javascript
tweenjs缓动算法的使用实例分析
2019/08/26 Javascript
Openlayers3实现车辆轨迹回放功能
2020/09/29 Javascript
vue使用video插件vue-video-player详解
2020/10/23 Javascript
在react项目中使用antd的form组件,动态设置input框的值
2020/10/24 Javascript
[02:23]2016国际邀请赛中国区预选赛wings晋级之路
2016/06/29 DOTA
django rest framework之请求与响应(详解)
2017/11/06 Python
Python实现一个Git日志统计分析的小工具
2017/12/14 Python
Python OpenCV对本地视频文件进行分帧保存的实例
2019/01/08 Python
Python动态语言与鸭子类型详解
2019/07/01 Python
python 协程 gevent原理与用法分析
2019/11/22 Python
Python中zip()函数的解释和可视化(实例详解)
2020/02/16 Python
python3利用Axes3D库画3D模型图
2020/03/25 Python
通过自学python能找到工作吗
2020/06/21 Python
瑞典香水、须后水和美容产品购物网站:Parfym-Klick.se
2019/12/29 全球购物
中海讯通笔试题
2015/09/15 面试题
建筑公司员工自我鉴定
2014/04/08 职场文书
乡镇党委书记个人整改措施
2014/09/15 职场文书
服务承诺书
2015/01/19 职场文书
入党积极分子个人总结
2015/03/02 职场文书
辩论赛开场白大全(主持人+辩手)
2015/05/29 职场文书
2016应届毕业生实习评语
2015/12/01 职场文书
《我的伯父鲁迅先生》教学反思
2016/02/16 职场文书
解决Go gorm踩过的坑
2021/04/30 Golang