自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 19. JS编程之遍历对象属性

题目描述找出对象 obj 不在原型链上的属性(注意这题测试例子的冒号后面也有一个空格~)1、返回数组,格式为 key: value2、结果数组不要求顺序示例//输入var C = function() {this.foo = 'bar'; this.baz = 'bim';}; C.prototype.bop = 'bip'; iterate(new C());//输出["foo: bar", "baz: bim"]编程实现用for(var key in obj)遍历对象,obj.

2020-11-09 18:54:53 226

原创 18. JS编程之批量改变对象的属性(如何向构造函数中添加对象属性)

题目描述给定一个构造函数 constructor,请完成 alterObjects 方法,将 constructor 的所有实例的 greeting 属性指向给定的 greeting 变量。示例//输入var C = function(name) {this.name = name; return this;}; var obj1 = new C('Rebecca'); alterObjects(C, 'What\'s up'); obj1.greeting;//输出What's up题

2020-11-09 17:55:18 668

原创 17. JS编程之二进制和十进制的相互转换

十进制转二进制十进制转二进制的方法toString()方法toSrting()方法可把一个 Number 对象转换为一个字符串NumberObject.toString(radix);radix为可选参数,表示数字的基数,把radix设为2,即可得到二进制的字符串。除2取余法题目1获取数字 num 二进制形式第 bit 位的值。注意:1、bit 从 1 开始2、返回 0 或 13、举例:2 的二进制为 10,第 1 位为 0,第 2 位为 1示例//输入128, 8

2020-11-09 17:02:41 1435

原创 16. JS编程之函数柯里化

题目描述已知 fn 为一个预定义函数,实现函数 curryIt,调用之后满足如下条件:1、返回一个函数 a,a 的 length 属性值为 1(即显式声明 a 接收一个参数)2、调用 a 之后,返回一个函数 b, b 的 length 属性值为 13、调用 b 之后,返回一个函数 c, c 的 length 属性值为 14、调用 c 之后,返回的结果与调用 fn 的返回值一致5、fn 的参数依次为函数 a, b, c 的调用参数编程实现//箭头函数(ES6)function curryIt

2020-11-08 22:17:33 154

原创 15. JS编程之使用函数的arguments对象

题目描述函数 useArguments 可以接收 1 个及以上的参数。请实现函数 useArguments,返回所有调用参数相加后的结果。本题的测试参数全部为 Number 类型,不需考虑参数转换。示例//输入1, 2, 3, 4//输出10考察知识点:将arguments对象转为数组的方法Array.prototype.slice.call(arguments)或[].silce.call(arguments)[...arguments]用for循环: var arr = []

2020-11-08 20:08:41 188

原创 14. JS编程之函数传参

题目描述将数组 arr 中的元素作为调用函数 fn 的参数示例//输入function (greeting, name, punctuation) { //函数fn return greeting + ', ' + name + (punctuation || '!');}['Hello', 'Ellie', '!']//数组arr//输出Hello, Ellie!考查知识点:如何将数组传递给函数作为参数fun.apply(thisArg ,[argArray] )第一个参数指

2020-11-08 15:01:26 117

原创 13. JS编程之流程控制

题目描述实现 fizzBuzz 函数,参数 num 与返回值的关系如下:1、如果 num 能同时被 3 和 5 整除,返回字符串 fizzbuzz2、如果 num 能被 3 整除,返回字符串 fizz3、如果 num 能被 5 整除,返回字符串 buzz4、如果参数为空或者不是 Number 类型,返回 false5、其余情况,返回参数 num示例//输入15//输出fizzbuzz知识点:判断变量是否为number的方法typeof(num)该方法返回num的类型,可以识

2020-11-08 13:56:42 103

原创 12. JS编程之计时器

题目描述实现一个打点计时器,要求1、从 start 到 end(包含 start 和 end),每隔 100 毫秒 console.log 一个数字,每次数字增幅为 12、返回的对象中需要包含一个 cancel 方法,用于停止定时操作3、第一个数需要立即输出。知识点扩展:JavaScript中的定时器有两种,setInterval()和setTimeout()。setInterval(code, millisec, lang)按指定周期反复调用函数或表达式。code — 要调用的函数或要

2020-11-07 20:49:27 274

原创 11. JS编程之查找元素在数组中的位置

题目描述在数组 arr 中,查找值与 item 相等的元素出现的所有位置示例//输入['a','b','c','d','e','f','a','b','c'] 'a'//输出[0, 6]方法一新创建一个数组用来存储结果,利用forEach()循环数组,找出数组中与元素target相同的元素,将其位置push进结果数组。遍历数组还可用for和for...in。function findAllOccurrences(arr, target) { var Arr = []; a

2020-11-07 11:41:06 6181

原创 10. JS编程之求数组元素的二次方

题目描述为数组 arr 中的每个元素求二次方。不要直接修改数组 arr,结果返回新的数组示例//输入[1, 2, 3, 4]//输出[1, 4, 9, 16]方法一使用arr.map(),为数组的所有元素调用求二次方的函数,并将结果作为一个新数组输出(平方还可用Math.pow(x,2)来计算)。function square(arr) { return arr.map((e)=>e*e);}`方法二利用for..of来遍历数组的元素,将计算的平方push进一个新数

2020-11-06 10:13:24 1198

原创 9. JS编程之查找数组中重复的元素

题目描述找出数组 arr 中重复出现过的元素//示例://输入[1, 2, 4, 4, 3, 3, 1, 5, 3]//输出[1, 3, 4]思路:新创建一个空数组储存结果,遍历原数组找出重复出现的元素,然后判断结果数组中是否存在该元素,不存在就push进去,存在就跳过判断下一个。遍历数组:可用两个for循环:用arr[i] ==arr[j]判断是否存在重复元素。也可用forEach()和for…in,map(),filter():用arr.indexOf(elem) ==arr.l

2020-11-05 10:58:47 11278 1

原创 8. JS编程之统计指定元素在数组中出现的次数

题目描述统计数组 arr 中值等于 item 的元素出现的次数输入[1, 2, 4, 4, 3, 4, 3], 4输出3方法一创建一个变量count统计元素数量,用forEach()遍历数组,用if语句判断每一个数组元素与item是否相等,相等则count+1。function count(arr, item) { var count = 0; arr.forEach((elem)=>{ if(item === elem){

2020-11-04 01:21:36 5663

原创 7. JS编程之在数组指定位置添加元素

题目描述在数组 arr 的 index 处添加元素 item。不要直接修改数组 arr,结果返回新的数组输入[1, 2, 3, 4], 'z', 2输出[1, 2, 'z', 3, 4]方法一先用slice()拷贝一份原数组,然后用splice()把item添加到指定的index位置。splice(index,delNum,add1,add2,...)是可以向数组中删除或添加元素,index指定位置,delNum是删除个数,为0的话就不删除元素,后面的参数就是需要在index位置添加的元

2020-11-03 21:40:52 1538

原创 6. JS编程之合并数组

题目描述合并数组 arr1 和数组 arr2。不要直接修改数组 arr,结果返回新的数组输入[1, 2, 3, 4], ['a', 'b', 'c', 1]输出[1, 2, 3, 4, 'a', 'b', 'c', 1]方法一用concat()方法将两个数组连接合并为一个新数组返回。function concat(arr1, arr2) { return arr1.concat(arr2);}方法二先用slice()拷贝数组arr1,再用push.apply()方法将ar

2020-11-03 20:34:17 710

原创 5. JS编程之向数组开头添加或删除元素

向数组开头添加元素题目描述在数组 arr 开头添加元素 item。不要直接修改数组 arr,结果返回新的数组输入[1, 2, 3, 4], 10输出[10, 1, 2, 3, 4]方法一用unshift()方法在数组首位添加元素,unshift方法会直接改变原数组,所以先利用slice()方法浅拷贝一份数组再进行添加。function prepend(arr, item) { var Arr = arr.slice(); Arr.unshift(item); .

2020-11-03 20:01:32 965

原创 4. JS编程之数组末尾添加或删除元素

题目描述在数组 arr 末尾添加元素 item。不要直接修改数组 arr,结果返回新的数组输入[1, 2, 3, 4], 10输出[1, 2, 3, 4, 10]方法一利用slice()方法浅拷贝一份数组,即在新数组中进行添加和删除都不会改变原数组。也可通过for循环复制拷贝。然后利用push()将元素添加到数组末尾。function append(arr, item) { var Arr = arr.slice(0); Arr.push(item); ret

2020-11-03 19:08:28 3018

原创 3. JS编程之移除数组中的元素

题目描述移除数组 arr 中的所有值与 item 相等的元素。不要直接修改数组 arr,结果返回新的数组输入[1, 2, 3, 4, 2], 2输出[1, 3, 4]方法一新建一个空数组,利用for循环遍历数组,判断数组成员与item是否相等,将不相等的成员pus进新数组。function remove(arr, item) { var newArr = []; for(let i=0; i<arr.length; i++){ if(arr[i]!=

2020-11-03 16:55:43 265

原创 2. JavaScript编程之数组求和

题目描述计算给定数组 arr 中所有元素的总和输入描述:数组中的元素均为 Number 类型示例1输入[ 1, 2, 3, 4 ]输出10思路:可以使用for循环、forEach()、map()、reduce()等进行遍历来求和,下面是这四种方法的比较。方法一常规循环:使用for循环进行遍历求和。方法二使用forEach()遍历数组的所有成员调用求和函数,forEach方法无返回值。array.forEach(function(currentValue, index, ar

2020-11-03 16:00:28 1365

原创 1. JavaScript编程之查找数组元素位置

题目描述找出元素 item 在给定数组 arr 中的位置输出描述:如果数组中存在 item,则返回元素在数组中的位置,否则返回 -1示例输入[ 1, 2, 3, 4 ], 3输出2方法一直接使用Array中的indexOf()方法,查找元素在数组中首次出现的位置,找到返回元素所在位置,找不到返回-1。function indexOf(arr, item) { return arr.indexOf(item); }var array = [[1, 2, 3, 4],

2020-11-03 14:29:00 1169

原创 JavaScript之闭包

对于闭包的理解一级目录二级目录三级目录一级目录二级目录三级目录

2020-10-16 19:34:47 59

原创 分别输出0-100的合数和质数

思路:用count变量统计每个数能被整除的数,利用两个for循环实现,利用取余的方式(i % j),count==2(1和数本身)为质数,count>2,即为合数。var arr1 = [];//保存质数var arr2 = [];//保存合数var count = 0;for(var i = 2; i<100; i++){ for(var j = 1; j<=i; j++){ if(i%j == 0){ count++; } } if(count == 2)

2020-10-16 15:18:46 683

原创 JavaScript之函数篇

JavaScript之函数篇一、函数的定义和调用1. 函数定义2. 调用函数二、变量作用域与解构赋值1. 变量声明及其作用域2. 解构赋值三、方法JavaScript中的函数可以像变量一样使用,具很强的抽象能力。此文章内容是学习廖雪峰的JavaScript教程的知识点总结。一、函数的定义和调用1. 函数定义第一种定义方法:function name(x1,x2,...x){//函数体return ;}JavaScript定义的函数实际是一个函数对象,函数名可视为指向函数的变量。

2020-09-25 21:16:43 139

原创 JavaScript基础知识点整理

JavaScript基础知识点整理基本语法每个语句结尾用;(不强制),语句块用{...}行注释//;块注释/* ... */数据类型和变量数据类型Number(数值):JavaScrept不分整数和浮点数;String:(字符串)以单引号'...'或双引号"..."括起来的文本;Boolean:(布尔值)true和false;布尔运算与&&、或||、非!;Null:空值,与0和“ ”不同;undefined:值未定义;Array:(数组)[x1,x2,x3,..]

2020-09-11 10:36:49 197

空空如也

空空如也

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

TA关注的人

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