面试编程题
小刘加油!
我真傻,真的,我单知道后端整天都是CRUD,怎么就忘了前端整天都是Form表单!
展开
-
函数声明和函数表达式的区别
题目描述请修复给定的 js 代码中,函数定义存在的问题示例输入:true输出: a代码如下function functions(flag) { if(flag) { function getValue() { return 'a';} } else { function getValue() { return 'b';} } return getValue();}这个函数如果不仔细看,会很容易认为代码是没有问题的。但实际上,无论参数为true还是false,结果输出原创 2021-03-12 16:40:21 · 125 阅读 · 0 评论 -
js中加减乘除运算后精度丢失的问题的解决方法
解决精度丢失问题加法运算减法函数乘法运算除法运算在一些实际开发中,需要运用到加减乘除计算,int类型的数据相加不会出现问题,但小数点相加会出现精度丢失的问题加法运算加法函数:解决思路是将所有小数化为整数进行运算,然后再转化为小数function add (arg1, arg2) { let r1, r2, m; try { r1 = arg1.toString().split('.')[1].length; // 获取arg1小数位的长度 } catch (e) { r1 = 0;原创 2021-03-12 14:27:30 · 1952 阅读 · 1 评论 -
使用arguments
题目描述函数 useArguments 可以接收 1 个及以上的参数。请实现函数 useArguments,返回所有调用参数相加后的结果。本题的测试参数全部为 Number 类型,不需考虑参数转换。输入:1, 2, 3, 4输出10题目思路解析 首先要知道arguments是什么东西,arguments是所在函数的一个内置类数组对象(类数组),值是函数传入的实参,它却不是真正的数组,不过可以使用数组的 [i] 和 .length方法,原创 2021-03-11 16:46:30 · 199 阅读 · 0 评论 -
已知函数 fn 执行需要 3 个参数。请实现函数 partial,二次封装函数,关于bind的一道面试题
题目描述:已知函数fn执行需要三个参数,请实现函数partial,调用之后满足以下条件:1、返回一个函数result,该函数接收一个参数2、执行result(str3),返回的结果与fn(str1, str2, str3)一致输入var sayIt = function( greeting, name, punctuation ) { return greeting + ',' + name + (punctuation || '!');};partial( sayIt, 'Hello原创 2021-03-11 15:59:29 · 170 阅读 · 0 评论 -
删除数组arr最后一个元素。不要接修改数组arr,结果返回新的数组
题目描述删除数组 arr 最后一个元素。不要直接修改数组 arr,结果返回新的数组输入[ 1, 2, 3, 4 ]输出[ 1, 2, 3 ]代码如下第一种方法function truncate(arr) { let newArr = arr.slice(0, arr.length); newArr.pop(); return newArr;}代码解析: 题目要求删除数组最后一个元素,但不能直接修改原数组arr,且原创 2021-03-11 12:42:49 · 2036 阅读 · 0 评论 -
统计字符串中每个字符出现的频率,返回一个object,key为统计字符,value为出现频率
题目描述统计字符串中每个字符的出现频率,返回一个 Object,key 为统计字符,value 为出现频率不限制 key 的顺序输入的字符串参数不会为空忽略空白字符输入‘hello world’输出{ h: 1, e: 1, l: 3, o: 2, w: 1, r: 1, d: 1 }代码如下:function count(str) { let obj = {}; let str = "hello world"; str = str.split(''); // 将字原创 2021-03-10 20:37:25 · 1051 阅读 · 0 评论 -
根据包名,在指定空间中创建对象
题目描述:根据包名,在指定空间中创建对象输入描述namespace({a: {test: 1, b: 2}}, ‘a.b.c.d’)输出描述{a: {test: 1, b: {c: {d: {}}}}}代码如下function namespace(oNamespace, sPackage) { var arr = sPackage.split('.') var obj = oNamespace arr.forEach(ele=>{ //原创 2021-03-10 15:03:35 · 271 阅读 · 0 评论 -
查找两个节点的最近一个共同父节点,可以包括节点自身 -----面试编程题
面试编程题总结:查找两个节点的最近的一个共同父节点,可以包括节点自身代码如下:function commonParentNode(oNode1, oNode2) { while(true) { oNode1 = oNode1.parentNode; if (oNode1.contains(oNode2)){ return oNode1; break; } }}代码思路理解:自定义一个函数,参数为两个节点原创 2021-03-10 13:31:58 · 524 阅读 · 0 评论