自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

sanshuiwang

https://blog.csdn.net/u013005050

  • 博客(21)
  • 收藏
  • 关注

原创 apply提高数组找出最大最小值的方式(性能)

apply() 方法调用一个函数, 其具有一个指定的this值,以及作为一个数组(或类似数组的对象)提供的参数。注意:call()方法的作用和 apply() 方法类似,只有一个区别,就是 call()方法接受的是若干个参数的列表,而apply()方法接受的是一个包含多个参数的数组。apply 使用apply和内置函数聪明的apply用法允许你在某些本来需要

2017-11-29 15:17:59 444

原创 函数传参(函数作为参数)

题目描述将数组 arr 中的元素作为调用函数 fn 的参数示例1输入function (greeting, name, punctuation) {return greeting + ', ' + name + (punctuation || '!');}, ['Hello', 'Ellie', '!']输出Hello, Ellie!

2017-11-29 14:35:15 1096

原创 流程控制

题目描述实现 fizzBuzz 函数,参数 num 与返回值的关系如下:1、如果 num 能同时被 3 和 5 整除,返回字符串 fizzbuzz2、如果 num 能被 3 整除,返回字符串 fizz3、如果 num 能被 5 整除,返回字符串 buzz4、如果参数为空或者不是 Number 类型,返回 false5、其余情况,返回参数 num示例1

2017-11-29 14:14:33 229 1

原创 计时器

实现一个打点计时器,要求1、从 start 到 end(包含 start 和 end),每隔 100 毫秒 console.log 一个数字,每次数字增幅为 12、返回的对象中需要包含一个 cancel 方法,用于停止定时操作3、第一个数需要立即输出第一种::运用setInterval定时器每间隔100毫秒打印一次,需要满足start小于等于endfunction co

2017-11-29 10:09:01 214

原创 递归(求对象中无底洞值)

今天想到了运用递归求出,对象中嵌套对象的无底洞的值。。。function m(data){console.log('leixcng::',typeof data.a);if(typeof data.a == 'object'){                console.log(1000,data.a);return m(data.a);}else{   

2017-11-28 14:10:00 226

原创 查找元素【全部】位置

题目描述在数组 arr 中,查找值与 item 相等的元素出现的所有位置第一种::filter过滤每一个元素,找到相同则执行push,最后返回存放下标数组function findAllOccurrences(arr, target) {    var m = [];    arr.filter(function(ele,idx,arr){        retur

2017-11-27 10:05:17 705

原创 求二次方

题目描述为数组 arr 中的每个元素求二次方。不要直接修改数组 arr,结果返回新的数组示例1输入[1, 2, 3, 4]输出[1, 4, 9, 16]Math.pow() 函数返回基数(base)的指数(exponent)次幂,即 baseexponent。function square(arr) {

2017-11-23 15:34:09 377

原创 查找重复元素

题目描述找出数组 arr 中重复出现过的元素示例1输入[1, 2, 4, 4, 3, 3, 1, 5, 3]输出[1, 3, 4]function duplicates(arr) {    var m = arr.reduce(function(allEle,curEle,index,arr){

2017-11-21 18:30:56 348

原创 计数

题目描述统计数组 arr 中值等于 item 的元素出现的次数示例1输入[1, 2, 4, 4, 3, 4, 3], 4输出3function count(arr, item) {    var o = arr.reduce(function(allEle,curValue,index,arr){

2017-11-20 15:57:09 174

原创 添加元素(任意位置)

题目描述在数组 arr 的 index 处添加元素 item。不要直接修改数组 arr,结果返回新的数组示例1输入[1, 2, 3, 4], 'z', 2输出[1, 2, 'z', 3, 4]第一种:: 运用splice的第二个蚕食为0去添加元素的特性function insert(arr, item, i

2017-11-20 15:28:48 483

原创 数组合并

题目描述合并数组 arr1 和数组 arr2。不要直接修改数组 arr,结果返回新的数组示例1输入[1, 2, 3, 4], ['a', 'b', 'c', 1]输出[1, 2, 3, 4, 'a', 'b', 'c', 1]//利用concatfunction concat(arr1, arr2)

2017-11-19 11:42:34 554

原创 删除数组第一个元素

题目描述删除数组 arr 第一个元素。不要直接修改数组 arr,结果返回新的数组示例1输入[1, 2, 3, 4]输出[2, 3, 4]第一种::运用slice()的浅克隆去复制元素从第二个开始到最后一个function curtail(arr) {var m = arr.slice(1);

2017-11-19 11:24:08 95254

原创 添加元素(数组开头)

题目描述在数组 arr 开头添加元素 item。不要直接修改数组 arr,结果返回新的数组示例1输入[1, 2, 3, 4], 10输出[10, 1, 2, 3, 4]unshit()向数组开头添加元素function prepend(arr, item) {var m = arr.slice();

2017-11-18 17:40:43 16448 1

原创 删除数组最后一个元素

题目要求:删除数组 arr 最后一个元素。不要直接修改数组 arr,结果返回新的数组。输入:[1,2,3,4]输出:[1,2,3]当然首先想到的是pop(),删除数组最后一项改变数组长度。这是第0中解决方案你说行不行啊!function truncate(arr) {    var m = arr.slice();          m.pop(

2017-11-18 16:58:55 128309

原创 添加元素(数组末端)

题目是这样的;在数组 arr 末尾添加元素 item。不要直接修改数组 arr,结果返回新的数组。输入:[1,2,3,4],10输出:[1,2,3,4,10]第一种:兼顾处理,可在函数内做判断(在输入参数item是数组时,可以做是否是数组兼容性判断)function append(arr, item) {var newArr=[item];    [

2017-11-17 21:55:09 2253

原创 移除数组中的元素(操作原数组)

题目:移除数组 arr 中的所有值与 item 相等的元素,直接在给定的 arr 数组上进行操作,并将结果返回输入:[1,2,3,4,2] ,2输出:[1,3,4]使用splice()删除与item相同的值并把数组索引回退一个值(i--)function removeWithoutCopy(arr, item) {    for

2017-11-16 22:06:24 631

原创 移除数组中的元素(返回新数组)

怎莫说呢!这道题目看似简单,但是也有很多种处理方式,答案仍然不唯一。题目是这样的;移除数组 arr 中的所有值与 item 相等的元素。不要直接修改数组 arr,结果返回新的数组。输入:[1,2,3,4,2] ,2输出:[1,3,4]第一种解决方案:for循环push()进新的数组中(像这种循环遍历对数组无增删的也可以选用forEach)遇到与item不

2017-11-16 21:56:39 11584

原创 reduce计算数组中元素出现的次数

var names = ['Alice', 'Bob', 'Tiff', 'Bruce', 'Alice'];var countedNames = names.reduce(function (allNames, name) {   console.log('allNames::'+allNames+";;name::"+name);  if (name in allNames)

2017-11-15 12:57:36 1089

原创 reduce在数组求和中第二个参数initialValue讨论

回调函数第一次执行时,accumulator 和currentValue的取值有两种情况:调用reduce时提供initialValue,accumulator取值为initialValue,currentValue取数组中的第一个值;没有提供 initialValue,accumulator取数组中的第一个值,currentValue取数组中的第二个值。注意:如果没有提供initialV

2017-11-15 11:13:48 2504 1

原创 数组求和

数组求和是这样描述的:计算给定数组 arr 中所有元素的总和输入的要求是这样的:数组中的元素均为Number类型实例:输入:[1,2,3,4]输出:10第一种解法:常规这道题目让我们上来就想到的是for循环对数组元素相加function sum(arr) {    var s = 0;    for (var i=arr.length-1;

2017-11-15 10:37:21 1535

原创 查找数组元素位置

题目原本是这样描述的:找出元素 item 在给定数组 arr 中的位置输出的数据要求是:如果数组中存在item,则输出在数组中的位置,否则输出-1输入:[1,2,3,4],3输出:2解决方案有以下三种:第一种:function indexOf(arr,item){return arr.indexOf(item);}是的,indexOf()方法

2017-11-14 23:49:31 655

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除