关于FCC认证的,部分题型做个记录
来源:互联网 发布:c语言技术面试题目 编辑:程序博客网 时间:2024/05/16 04:37
本人博主 孤雪飘寒原创,对你有帮助请点赞,有想法或问题请在下面评论说出来,博主第一时间回复,转载请注明出处,谢谢
JS篇
1.整数的阶乘
function factorialize(num) { return (num<1) ? num = 1 : num*factorialize(num-1);}
2.检查字符串是否回文
function palindrome(str) { // Good luck! //忽略标点符号 str=str.replace(/\W+/g,''); str=str.replace(/\_+/g,''); //忽略大小写 str=str.toLowerCase(); //重组 var newArray=str.split('').reverse().join(''); if(str==newArray){ return true; }else{ return false; }}palindrome("eye");
3.检查字符串中最长单词长度
function findLongestWord(str) { var arr=str.split(' '); var bjs=0; for(var i=0;i<arr.length;i++){ var arrNum=arr[i].length; if(arrNum>bjs){ bjs=arrNum; } } return bjs;}findLongestWord("The quick brown fox jumped over the lazy dog");
4.首字母全部大写
function titleCase(str) { str=str.toLowerCase().split(' '); var newStr=''; var newArray=[]; for(var i=0;i<str.length;i++){ var a=str[i][0].toUpperCase(); var str1 = str[i].replace(/^\w/,a); newArray.push(str1); } newStr=newArray.join(' '); return newStr;}titleCase("I'm a little tea pot");
5.二维数组中最大值组成一个新的数组
function largestOfFour(arr) { // You can do this! var newArray=[]; for(var i=0;i<arr.length;i++){ var bjs=0; for(var j=0;j<arr[i].length;j++){ if(arr[i][j]>bjs){ bjs=arr[i][j]; newArray[i]=bjs; } } } return newArray;}largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 1857, 1]]);
6.判断第二参数的字符串是否存在于第一参数字符串中
function confirmEnding(str, target) { // "Never give up and good luck will find you." // -- Falcor return str.substr(-(target.length))==target?true:false;}confirmEnding("He has to give me a new name", "name");
7.重复一个指定的字符串 num次,如果num是一个负数则返回一个空字符串。
function repeat(str, num) { // repeat after me if(num<=0){ return ""; }var arr=[]; for(var i=0;i<num;i++){ arr[i]=str; } str=arr.join(""); return str;}repeat("abc", 2);
8.截取字符长度,根据参数大小判断添加后长度
function truncate(str, num) { // Clear out that junk in your trunk if(str.length > num){ if(num <= 3){ str = str.slice(0,num).concat("..."); }else{ str = str.slice(0,num-3).concat("..."); } } return str;}truncate("A-tisket a-tasket A green and yellow basket", "A-tisket a-tasket A green and yellow basket".length + 2);
9.将一个数组根据参数拆分成二维数组
function chunk(arr, size) { // Break it up. var newArray=[]; for(var i=0;i<arr.length;i=i+size){ var index=i+size; var tempArray=arr.slice(i,index); newArray.push(tempArray); //简化写法 // newArray.push(arr.slice(i,i+size)); } return newArray;}chunk(["a", "b", "c", "d"], 2);
10.数组的切割
function slasher(arr, howMany) { // it doesn't always pay to be first var newArray=[]; if(howMany>arr.length){ return newArray; } newArray=arr.slice(howMany); return newArray;}slasher([1, 2, 3], 2);
11.蛤蟆可以吃队友,也可以吃对手。
如果数组第一个字符串元素包含了第二个字符串元素的所有字符,函数返回true。
function mutation(arr) { var str1=arr[0].toLowerCase(); var str2=arr[1].toLowerCase(); //1.整句存在 //return str1.indexOf(str2)<0?false:true; //2.每个都存在 for(var i=0;i<str2.length;i++){ if(str1.indexOf(str2.charAt(i))==-1){ return false; } } return true;}mutation(["zyxwvutsrqponmlkjihgfedcba", "qrstu"]);
12.删除数组中的所有假值。
在JavaScript中,假值有false、null、0、”“、undefined 和 NaN。
function bouncer(arr) { // Don't show a false ID to this bouncer. var newArr=arr.filter(function(x){ return Boolean(x)!=false; }); return newArr;}bouncer([7, "ate", "", false, 9,0]);
13.实现一个摧毁(destroyer)函数,第一个参数是待摧毁的数组,其余的参数是待摧毁的值。
function destroyer(arr) { // Remove all the values var oneArr=arguments[0]; var newArr=[]; var fArr=[]; //获取所有要剔除的条件 for(var i=1;i<arguments.length;i++){ newArr[i-1]=arguments[i]; } //过滤 fArr=oneArr.filter(function(x){ for(var i=0;i<newArr.length;i++){ if(x==newArr[i]){ return false; } } return true; }); return fArr;}destroyer([1, 2, 3, 1, 2, 3], 2, 3);
14.先给数组排序,然后找到指定的值在数组的位置,最后返回位置对应的索引。
function where(arr, num) { // Find my place in this sorted array. arr.push(num); arr.sort(function(a,b){return a-b;}); var indexArr=0; for(var i=0;i<arr.length;i++){ if(arr[i]==num){ indexArr=i; return indexArr; } } return indexArr;}where([40, 60], 50);
15.写一个ROT13函数,实现输入加密字符串,输出解密字符串。
所有的字母都是大写,不要转化任何非字母形式的字符(例如:空格,标点符号),遇到这些特殊字符,跳过它们。
function rot13(str) { // LBH QVQ VG! var arr=str.toUpperCase().split(" "); var str1=[]; for(var i=0;i<arr.length;i++) { var arr1=arr[i].split(""); for(var j=0;j<arr1.length;j++) { var num=arr1[j].charCodeAt(); if(num>=65&&num<=90) { arr1[j]=num+13>90?String.fromCharCode(64+(num+13-90)):String.fromCharCode(num + 13); } } str1.push(arr1.join("")); } return str1.join(" "); //return String.charCodeAt(str);}// Change the inputs below to testrot13("Z");
0 0
- 关于FCC认证的,部分题型做个记录
- 关于FCC认证的HAC
- FCC认证
- FCC认证
- 关于素数的题型
- FCC中ajax部分的天气预报
- FCC认证简介
- FCC认证流程
- FCC认证项目简介
- FCC ID认证简介
- 关于递归的一些题型
- 关于堆栈的些许面试题型的分析与实现 之 暑假学习记录
- 蓝牙产品FCC-ID认证
- 关于java推送自己写的一点心得做个记录
- FCC认证最新资讯:SDoC 认证正式生效
- 好奇的东西 做个记录
- 不明白的地方,做个记录
- 最近了解到的东西,做个记录
- CF
- Python 笔记
- 异步编程中的异常处理
- python学习笔记
- HTML/CSS
- 关于FCC认证的,部分题型做个记录
- Glide 加载圆角或圆形图片
- 众数问题
- RMQ问题入门(sparse_table稀疏表)——UVA
- HashMap的工作原理
- Codeforces Round #402 (Div. 2) D. String Game (二分)
- UML之交互图(序列图与协作图)
- Spring注解详解
- Ubuntu 12.04.3 软件中心 报错