c语言摧毁数组,摧毁数组
金克斯的迫击炮!
实现一个摧毁(destroyer)函数,第一个参数是待摧毁的数组,其余的参数是待摧毁的值。
知识点
arguments
Array.filter()
Array.indexOf()
arguments主要用于不清楚会有多少个实参
function destroyer(arr) {
// 请把你的代码写在这里
var destroy = [];
for(var i=1;i
destroy.push(arguments[i]);
}
arr = arr.filter(function(value){return this.indexOf(value) == -1;},destroy);
return arr;
}
destroyer([1, 2, 3, 1, 2, 3], 2, 3);
曾经这么写过:输出的都是想要的结果,可是就是通过不了测试用例,希望高手看到后能给予解答,
function destroyer(arr) {
for(var i=1;i
arr = arr.filter(function(value){return value !== this;},arguments[i]);
}
return arr;
}
destroyer([1, 2, 3, 1, 2, 3], 2, 3);//输出的就是[1,1],可就是通过不了测试用例
通过调试发现不少原来不知道的东西:
1、return [1,1] === [1,1] 居然返回 false,原来数组与数组是不能直接比较的。很好奇官网测试用例是通过什么方式判断程序是否正确的,是否是先将数组转成字符串再比较,即Array.toSting(),不得而知,如果你知道,欢迎留言。
2、也曾怀疑arr虽然输出为[1,1],但会不会其实是一个字符串,不是一个数组,后来用Array.isArray(arr) 判断为true,证明假想错误。
3、也许你不知道filter函数可以接收的第二个参数是什么,它会将你要传的参数,传给function里的this,这样就可以实现每次function里return的条件不一样。一开始为什么这样写呢,因为没想到用indexOf来解决,但是从思想上来讲,我觉得没错啊。
c语言摧毁数组,摧毁数组相关推荐
- c语言数组的一维编程,【C语言】转换一维数组
#include #define MAX_SIZE 20 /* 最大数组个数 */ void TransposeArray(int *arr,int size); int main() { int s ...
- C语言指针数组与数组指针的区别
C语言指针数组与数组指针的区别 首先,顾名思义 数组指针是一个指针,是指向一个数组的指针,如 int (a*)[5]:这就是一个指向含有5个元素的数组的指针 指针数组是一个数组,它包含的元素全是指针变 ...
- Go 语言编程 — 高级数据类型 — 数组
目录 文章目录 目录 数组 定义数组 数组与切片的区别 访问数组元素 多维数组 初始化二维数组 访问二维数组 向函数传递数组 指针数组 数组 数组是具有相同数据类型的一组已编号且长度固定的数据项序列, ...
- C 语言编程 — 高级数据类型 — 数组
目录 文章目录 目录 前文列表 数组 声明数组 初始化数据 访问数组元素 二维数组 指向数组的指针 将数组指针作为实参传入函数 从函数返回一个数组指针 指针数组 数组名和取数组首地址的区别 前文列表 ...
- C语言复习篇之数组与指针
C语言复习篇之数组与指针 学习了一段时间的嵌入式linux了,学习中有很多的东西需要总结,有经验有教训,我觉得把他写下来会更好,就当做是一种笔记的形式,记录学习中的点点滴滴,不仅仅自己可以经常复习,也 ...
- c语言中栈区运用原理形象图,C语言实现使用动态数组来构造栈结构
我在面前一篇博客<C语言实现使用静态数组来构造栈结构>中使用了静态数组来模拟栈的操作.静态数组的大小是在代码中写死的.是存储在用户栈上面的,使用起来不灵活.在这篇博客中我会使用动态数组来构 ...
- 【C 语言】数组 ( 指针数组用法 | 自我结束能力 )
文章目录 一.指针数组用法 ( 自我结束能力 ) 二.完整代码示例 一.指针数组用法 ( 自我结束能力 ) 在上一篇博客 [C 语言]数组 ( 指针数组用法 | 命令行参数处理 ) 中的主函数中的 c ...
- 【C 语言】数据类型本质 ( 数据类型 | 数据类型本质 | 数组地址 | 数组首元素地址 )
文章目录 一.数据类型 二.数据类型本质 ( 数组地址 | 数组首元素地址 ) 一.数据类型 " 数据类型 " 是 数据的抽象 ; 相同类型的数据 , 表示形式相同 , 存储格式相 ...
- 【C 语言】指针 与 数组 ( 指针 | 数组 | 指针运算 | 数组访问方式 | 字符串 | 指针数组 | 数组指针 | 多维数组 | 多维指针 | 数组参数 | 函数指针 | 复杂指针解读)
相关文章链接 : 1.[嵌入式开发]C语言 指针数组 多维数组 2.[嵌入式开发]C语言 命令行参数 函数指针 gdb调试 3.[嵌入式开发]C语言 结构体相关 的 函数 指针 数组 4.[嵌入式开发 ...
最新文章
- javascript语法糖_语法糖和JavaScript糖尿病
- 使用python爬取教程生成PDF
- Matlab怎么计算信号的能量,用Matlab求离散讯号的能量与功率怎么编程
- STL常用的集合算法
- 一文弄懂EnumMap和EnumSet
- 读取Mc1000的 唯一 ID 机器号
- 图形化界面工具 SQLyog
- JAVA标准输出错误输出,从tsls输出中提取标准错误
- 微服务架构工作笔记003---了解认识google Kubernetes 容器管理
- 【体系结构】Oracle体系结构的独特理解
- 打包后找不到so_RTX 3090安装cuda11.1 找不到libcusolver.so.10
- 从零基础入门Tensorflow2.0 ----四、13.生成csv文件
- linux英英词典项目,[开发手记] 一款基于命令行的英英词典 (A CLI-Based EE Dictionary)...
- onpropertychange
- 初学 Click 路由器
- C语言 - 输入x的值,输出y相应的值 x (x<1) y= 2x-1 (1≤x<10) 3x-11 (x≥10)
- Java —— 自定义JSR303校验
- Makefile简单讲解
- php 除法,php中如何除法取整
- JavaScript中的函数中arguments、参数、默认值和表达式以及箭头函数
热门文章
- 关于进一步明确实施《建筑业营业税改征增值税四川省建设工程计价依据调整办法》有关事项的通知
- uni 在app中引入h5页面(uni编写)
- 罗伯特扫地机器人电池如何取_自己动手iRobot Braava 380T扫地擦地机外挂电池记录...
- AUTOSAR网络管理
- 2D游戏开发--- 雷电小游戏小鸟飞呀飞
- P2P中的数据传输策略探讨
- 【智能金融】机器学习在风控领域的应用
- CAS和ASQ原理(源码详解)
- 福禄克DSX2-8000/DSX2-5000 CH 电缆测试仪带了Cat 6A的测试方法: 超6类网线——光明的未来
- 大数据第一天:修改网卡名由ens33改成eth0