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 相关文章推荐
prototype 源码中文说明之 prototype.js
Sep 22 Javascript
Javascript学习笔记1 数据类型
Jan 11 Javascript
js实现类似MSN提示的页面效果代码分享
Aug 24 Javascript
每天一篇javascript学习小结(Boolean对象)
Nov 12 Javascript
jQuery插件cxSelect多级联动下拉菜单实例解析
Jun 24 Javascript
详解用vue-cli来搭建vue项目和webpack
Apr 20 Javascript
微信小程序自定义toast实现方法详解【附demo源码下载】
Nov 28 Javascript
Webpack 4.x搭建react开发环境的方法步骤
Aug 15 Javascript
微信小程序移动拖拽视图-movable-view实例详解
Aug 17 Javascript
layui表单验证select下拉框实现验证的方法
Sep 05 Javascript
vue 判断元素内容是否超过宽度的方式
Jul 29 Javascript
Javascript confirm多种使用方法解析
Sep 25 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 远程图片保存到本地的函数类
2008/12/08 PHP
PHP 魔术函数使用说明
2010/05/14 PHP
使用php计算排列组合的方法
2013/11/13 PHP
php版微信公众平台开发之验证步骤实例详解
2016/09/23 PHP
php连接MSsql server的五种方法总结
2018/03/04 PHP
PHP 实现文件压缩解压操作的方法
2019/06/14 PHP
基于PHP+mysql实现新闻发布系统的开发
2020/08/06 PHP
javascript 避免闭包引发的问题
2009/03/17 Javascript
兼容多浏览器的iframe自适应高度(ie8 、谷歌浏览器4.0和 firefox3.5.3)
2009/11/04 Javascript
Javascript中产生固定结果的函数优化技巧
2013/01/16 Javascript
JS实现下拉框的动态添加(附效果)
2013/04/03 Javascript
深入探讨javascript中的数据类型
2015/03/04 Javascript
javascript获取系统当前时间的方法
2015/11/19 Javascript
Vue.js双向绑定操作技巧(初级入门)
2016/12/27 Javascript
微信小程序左滑删除效果的实现代码
2017/02/20 Javascript
jQuery实现三级联动效果
2017/03/02 Javascript
在JavaScript中使用严格模式(Strict Mode)
2019/06/13 Javascript
nodejs实现的http、https 请求封装操作示例
2020/02/06 NodeJs
解决vue组件销毁之后计时器继续执行的问题
2020/07/21 Javascript
Django1.7+python 2.78+pycharm配置mysql数据库教程
2014/11/18 Python
简单介绍Python中的readline()方法的使用
2015/05/24 Python
python爬虫 正则表达式使用技巧及爬取个人博客的实例讲解
2017/10/20 Python
python操作excel文件并输出txt文件的实例
2018/07/10 Python
对Python 窗体(tkinter)树状数据(Treeview)详解
2018/10/11 Python
在Python中使用filter去除列表中值为假及空字符串的例子
2019/11/18 Python
Python爬虫爬取杭州24时温度并展示操作示例
2020/03/27 Python
Python常用数据分析模块原理解析
2020/07/20 Python
Pandas中DataFrame交换列顺序的方法实现
2020/12/14 Python
便携式太阳能系统的创新者:GOAL ZERO
2018/02/04 全球购物
班会关于环保演讲稿
2013/12/29 职场文书
售后服务承诺书范文
2014/03/26 职场文书
小学英语课后反思
2014/04/26 职场文书
师德标兵先进事迹材料
2014/12/19 职场文书
2015年感恩节演讲稿(优选篇)
2015/03/20 职场文书
2015年人事科工作总结
2015/04/28 职场文书
python如何利用traceback获取详细的异常信息
2021/06/05 Python