不标准写法

文章目录

  • 前言
  • 一、实现一个函数,输入某个字符串,输出其中出现最多的字符和个数
  • 二、封装方法将字符串转化为驼峰命名
  • 三、给定一个字符串,找到它的第一个不重复的字符,并返回它的索引
  • 四、统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符
  • 五、请写一个函数,将数字的整数位以千分位分隔
  • 六、给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标
  • 七、书写一个函数,以两个有序数组作为参数,返回合并成的有序数组
  • 八、实现一个函数,传入一个或多个对象,返回一个合并了它们所有属性的对象,如果出现同名属性,后买你的属性值会覆盖前面的
  • 总结

前言

前言就是自己解除了题好开森!


一、实现一个函数,输入某个字符串,输出其中出现最多的字符和个数

<script>function fn(b) {var arr = [];arr[0] = b[0];var o = {};var m = [];for (var i = 0; i < b.length; i++) {var n = 1;for (var j = 0; j < arr.length; j++) {if (b[i] == arr[j]) {n += 1;} else {n += 0;}}if (n == 1) {arr.push(b[i]);}}for (let w = 0; w < arr.length; w++) {var c = 0;for (let u = 0; u < b.length; u++) {if (b[u] == arr[w]) {c += 1;} else {c += 0;}}o[arr[w]] = c;}console.log(o);// 找出出现最多的var d = 0;var h = '';for (const key in o) {if (o[key] > d) {d = o[key];h = key}}console.log('字符最多的是'+h+',出现了'+d+'次');}fn("abcaaaaaaaabcbbccccc");</script>

>{a: 9, b: 4, c: 7}

>字符最多的是a,出现了9次

二、封装方法将字符串转化为驼峰命名

<script>function fn(str) {console.log(str);str = str.split('-');console.log(str);for (let i = 1; i < str.length; i++) {var s = str[i][0];var q = s.toUpperCase();str[i] = str[i].replace(s,q)console.log(str);}var i = ''for (let d = 0; d < str.length; d++) {i = i + str[d]}console.log(i);}var s1 = "get-element-by-id";fn(s1);</script>

>getElementById

三、给定一个字符串,找到它的第一个不重复的字符,并返回它的索引

<script>function fn(str) {var b = ''var d = '';var s = [];for (let i = 0; i < str.length; i++) {s[i] = str[i]}for (let j = 0; j < str.length; j++) {b = strvar a = s[j];b = b.replace(a,'');for (let y = 0; y < b.length; y++) {var n = 0;for(var key in b){if (a == b[key]) {n += 1;break}else{n += 0;}}if (n == 0) {d +=a;}}}console.log(str.indexOf(d[0]));}s = "leetcode"fn(s) // 返回 0s = "loveleetcode"fn(s) // 返回 2

四、统计字符串中的单词个数,这里的单词指的是连续的不是空格的字符

请注意,你可以假定字符串里不包括任何不可打印的字符。

输入: "Hello, my name is John"

输出: 5

解释: 这里的单词是指连续的不是空格的字符,所以 "Hello," 算作 1 个单词。

输入:"how are you"

输出:3

<script>function fn(str) {str = str.split(' ')var a = str.length;console.log(a);}fn("Hello, my name is John");fn("how are you")</script>

>5

>3

五、请写一个函数,将数字的整数位以千分位分隔

<script>function fn(num) {num = num.toString();// 复制给cvar c = [];for (let i = 0; i < num.length; i++) {c[i] = num[i]}num = String(num).split('.')// a为小数点前面部分var a = num[0];// l小数点前面部分长度var l = a.length;// y前面第一个逗号位置(y=1,2)var y = l % 3;// n后面有几个逗号(n=1,0)var n = (l - y) / 3 - 1;if (y != 0 && n >0) {c.splice(y, 0, ',');for (let x = 1; x < n + 1; x++) {c.splice(y + 3 * x + 1 * x, 0, ',')}var k = '';for (let m = 0; m < c.length; m++) {k = k + c[m];}} else if (n > 0) {for (let x = 1; x < n + 1; x++) {c.splice(3 * x - 1 + 1 * x, 0, ',')}var k = '';for (let m = 0; m < c.length; m++) {k = k + c[m];}} else if(y != 0 && n == 0){c.splice(y, 0, ',');var k = '';for (let m = 0; m < c.length; m++) {k = k + c[m];}}else{var k = '';for (let m = 0; m < c.length; m++) {k = k + c[m];}}console.log(k);}fn(1234567)  // "1,234,567"fn(12345.67) // "12,345.67"

六、给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标

<script>var nums = [2,7,11,15];var target = 9;for (var i = 0; i < nums.length; i++) {// a为这轮的nums值var a = nums[i]var b = [];for (let j = 0; j < nums.length; j++) {b[j] = nums[j];}var c = b.indexOf(a);b.splice(c,1);var c = '';var d = '';for (let k = 0; k < b.length; k++) {if (a+b[k] == target) {d =d+ k;c =c+ i;break;}}if (d != '') {console.log(d,Number(c)+1);break;}}</script>

>0 1

七、书写一个函数,以两个有序数组作为参数,返回合并成的有序数组

<script>function fn(arr1, arr2) {// 合并数组var a = [];for (let i = 0; i < arr2.length; i++) {a.push(arr2[i])a.push(arr1[i])}var b = [];b[0] = a[0];for (let j = 0; j < a.length-1; j++) {for (let k = b.length-1; k >= 0; k--) {var m = 0;if (a[j+1] >= b[k]) {m = k+1;break;}}if (m != 0) {b.splice(m,0,a[j+1])}else{b.unshift(a[j+1])}}console.log(b);}var nums1 = [1, 2, 3]var nums2 = [2, 5, 6]fn(nums1, nums2); // [1,2,2,3,5,6]</script>

八、实现一个函数,传入一个或多个对象,返回一个合并了它们所有属性的对象,如果出现同名属性,后面属性值会覆盖前面的


总结

提示:本文可能大多都在绕圈子,for了一整天,仅供参考

JS编程练习题(javascript)相关推荐

  1. 4.1 js小练习题javascript 今日小练习

    js小练习题javascript 今日小练习 输入一个数字,判断是不是水仙花数自恋数(自幂数 各位的3次方+十位的三次方+百位的三次方等于153) ----输出true或false即可. 解答: &l ...

  2. 前端利器—1—转型JS编程

    JS作为前端开发的必备语言工具,虽然JS对非编程人员来说比较容易上手,但是,要真正的精通JS开发,尚且假设学习过c++.java等面向对象语言的一种.因为对oo开发人员,迅速掌握JS的开发要点,是顺利 ...

  3. Underscore js是一个JavaScript实用库

    Underscore.js是一个JavaScript实用库,提供了一整套函数式编程的实用功能,但是没有扩展任何JavaScript内置对象.弥补了部分jQuery没有实现的功能,同时又是Backbon ...

  4. Vue.js(渐进式JavaScript框架)

    Vue.js(渐进式JavaScript框架) 渐进式:逐步实现新特性. Vue (发音为 /vjuː/,类似 view) 是一款用于构建用户界面的JavaScript框架.它基于标准HTML.CSS ...

  5. 牛客/赛码 编程题 javascript 的本地调试

    还在担心编程题 javascript 的本地调试问题吗? 先贴出牛客网 js(V8) 的输入输出来看看 while(line=readline()){var lines = line.split(' ...

  6. php 代码延迟执行,php和js编程中的延迟执行效果的代码

    php和js编程中的延迟执行效果的代码 php sleep(10); usleep(10); js里的 setInterval("方法", 100); PHP sleep() 函数 ...

  7. 函数式编程在JavaScript下应用实践

    点击此处阅读原文:函数式编程在JavaScript下应用实践 函数式编程在JavaScript下应用实践 文章目录 函数式编程在JavaScript下应用实践 前言 从一个实际需求说起 一把梭实现 C ...

  8. c语言 简单编程题,c语言简单编程练习题.doc

    c语言简单编程练习题 精品文档 2016全新精品资料-全新公文范文-全程指导写作 –独家原创 PAGE1 / NUMPAGES1 c语言简单编程练习题 然后输出相应的字符. #include #inc ...

  9. 海伦公式c语言编程funcd,c语言编程练习题及答案_0.doc

    c语言编程练习题及答案_0 精品文档 2016全新精品资料-全新公文范文-全程指导写作 –独家原创 PAGE1 / NUMPAGES19 c语言编程练习题及答案 学生数 印数 考核方式 闭卷 考核时间 ...

  10. python 分数序列求和公式_Python分数序列求和,编程练习题实例二十四

    本文是关于Python分数序列求和的应用练习,适合菜鸟练习使用,python大牛绕行哦. Python练习题问题如下: 问题简述:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13 要 ...

最新文章

  1. 点击文字弹出一个DIV层窗口代码
  2. Java中的24种设计模式与7大原则
  3. oracle用EXPLAIN PLAN 分析SQL语句
  4. JS实现在输入框内输入@时,邮箱账号自动补全
  5. php email 发送,php 发送 Email
  6. 第十八节:教你如何使用ES6的Promise对象
  7. 信息学奥赛一本通 2053:【例3.3】三个数
  8. 圆角边框(HTML、CSS)
  9. Qt-textEdit 滚顶条设置只读模式
  10. (转)直击马云虞锋闭门对话,3小时谈透未来变革大势,定调千亿美元目标
  11. MySQL索引优化的几种方式
  12. 如何设置python类的私有属性
  13. 顺丰android架构师,顺丰数据库运维架构.pdf
  14. 把这304道React的面试题刷完,前端面试没有在怕的!
  15. Placement blockage types
  16. 以下哪种数据结构的查找效率最高
  17. 区块链概念正宗龙头股
  18. python实现Hangman游戏
  19. artemis服务_集成Artemis
  20. 面试中自我介绍的小技巧

热门文章

  1. 三级数据库考mysql_计算机三级MySQL数据库试题及答案
  2. python如何操作oracle数据库_Python连接oracle数据库的基本操作
  3. java转码工具应用程序_java转码工具native2ascii.exe的使用方法
  4. 从零开始学android
  5. 汇编语言程序设计(一)
  6. 原生JS实现图片幻灯片效果
  7. 【开源系列】三国演义LBS (二)游戏策划案
  8. 收集的一些discuz插件常用插件。
  9. java api1.8中文版(由谷歌,百度,有道,必应翻译).md
  10. php 定时推送,php定时自动发送新浪微博