JS - 算法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS - 算法相关的知识,希望对你有一定的参考价值。
1. 翻转字符串
先把字符串转化成数组,再借助数组的reverse方法翻转数组顺序,最后把数组转化成字符串。
function reverseString(str) { // 1. 字符串转换成数组 // 2. 数组的reverse()方法翻转 // 3. 数组转换成字符串 var newArrayString = str.split(""); console.log(newArrayString); var newArrayReverse = newArrayString.reverse(); console.log(newArrayReverse); var str = newArrayReverse.join(""); console.log(str); return str; } reverseString("hello");
2. 计算一个整数的阶乘
function factorialize(num) { result = 1; while(num >= 1) { result *= num; num--; } return result; } factorialize(5);
3. 如果给定的字符串是回文,返回true
,反之,返回false
。
function palindrome(str) { // 1. 过滤掉所有空格,标点符号,空格,其他字符,只留字母 // 2. 全部转换为小写 // \W Matches any non-word character. Equivalent to [^A-Za-z0-9_]. return str.replace(/[\W_]/g, ‘‘).toLowerCase() === str.replace(/[\W_]/g, ‘‘).toLowerCase().split(‘‘).reverse().join(‘‘); } console.log(palindrome("ab0ba"));
4. 找到提供的句子中最长的单词,并计算它的长度。
function findLongestWord(str) { // 1. 将文本转换成数组 // 2. 使用循环遍历查询最长的单词 var newStringArray = str.split(" "); var longestStr = newStringArray[0].length; for(var i = 1; i < newStringArray.length; i++) { if(longestStr < newStringArray[i].length) { longestStr = newStringArray[i].length; } } return longestStr; } findLongestWord("The quick brown fox jumped over the lazy dog");
5. 确保字符串的每个单词首字母都大写,其余部分小写。
以上是关于JS - 算法的主要内容,如果未能解决你的问题,请参考以下文章
有人可以解释啥是 SVN 平分算法吗?理论上和通过代码片段[重复]