JS——思维拓展
1、阶乘求和:4的阶乘是1*2*3*4
<script>
function jiechen(value) {
var n = 1;
for (var i = 1; i <= value; i++) {
n *= i;
}
return n;
}
function sum(value) {
var n = 0;
for (var i = 1; i <= value; i++) {
n += jiechen(i);
}
return n;
}
console.log(sum(3));//
</script>
2、素数:又称质数,除了1和它本身,不能被其他数整除
<script>
function isPrime(num) {
for (var i = 2; i < num; i++) {
if (num % i === 0) {
return false;
}
}
return true;
}
console.log(isPrime(9));//false
</script>
3、将1-10中的奇数放入数组
<script>
var arr = [];
for (var i = 1; i <= 10; i++) {
if (i % 2 !== 0) {
arr[arr.length] = i;
}
}
console.log(arr);//[1, 3, 5, 7, 9]
</script>
4、将1-10中的偶数放入数组
<script>
var arr = [];
for (var i = 1; i <= 10; i++) {
if (i % 2 === 0) {
arr[arr.length] = i;
}
}
console.log(arr);//[2, 4, 6, 8, 10]
</script>
5、数组翻转
<script>
var arr = ["刘备", "关羽", "张飞", "诸葛亮", "马超", "黄忠", "姜维"];
console.log(arr);
var newArr = [];
for (var i = 0; i < arr.length; i++) {
newArr[newArr.length] = arr[arr.length - 1 - i];//用新数组的长度作为索引值。
}
console.log(newArr);
</script>
<script>
var arr = ["刘备", "关羽", "张飞", "诸葛亮", "马超", "黄忠", "姜维"];
console.log(arr);
var newArr = [];
for (var i = 0; i < arr.length / 2; i++) {
var temp = arr[i];
arr[i] = arr[arr.length - 1 - i];//前面项和对应的后面项交换位置。(arr.length-1-i = 倒数第i+1项)
arr[arr.length - 1 - i] = temp;
}
console.log(arr);
</script>
5、递归法计算1-100的值
<script>
function getSum(n) {
if (n < 1) {
return 0;
}
return n + getSum(n - 1);
}
console.log(getSum(100));//
</script>
6、斐波那契数列:1、1、2、3、5、8、13、21、34、…
<script>
var n1 = 1;
var n2 = 1;
function getNum(num) {
for (var i = 3; i <= num; i++) {
var temp = n2;
n2 = n1 + n2;
n1 = temp;
}
return n2;
}
console.log(getNum(6));//
</script>
7、判断闰年:四年一闰而且百年不闰或者四百年一润
<script>
function isRun(year) {
if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
return true;
}
return false;
}
</script>
8、输入年月日,计算这天是当年的第多少天
<script>
function isRun(year) {
if (year % 4 === 0 && year % 100 !== 0 || year % 400 === 0) {
return true;
}
return false;
}
function getDay(year, month, day) {
var arr = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
for (var i = 0; i < month - 1; i++) {
day = day + arr[i];
}
if (month > 2 && isRun(year)) {
day++;
}
return day;
}
console.log(getDay(2017,3,17));//
</script>
JS——思维拓展的更多相关文章
- JS思维导图(转)
思维导图不得不说是学习及温习的极佳方法,这里转载一波网上他人的精品JS思维导图十张,共同学习,如有冒犯原著可联系本人及时处理.
- JS思维之路菜鸟也能有大能量(1)--模拟push
因为本系列文章属于思维类,所以不做基础方法的讲解. 任务:首先我定义了一个变量var arr = [0,1,2,3,4,5];我现在想模拟push方法在这个数组的5后面加东西,我们应该怎么做?给你5分 ...
- arcgis api 4.x for js 图层拓展篇之mapvLayer(附源码下载)
因为在项目开发过程中,使用的arcgis js api版本是4.7,并不能支持客户端渲染热力图,想到arcgis js api 4.x的渲染是基于canvas,故琢磨着是否能借助类似于mapV.ech ...
- JS思维之路菜鸟也能有大能量(2)--模拟数组合并concat
我们有两个这样的数组 var arr1 = [1,2,3]; var arr2 = [4,5,6]; 任务:合并成这样,请至少提供两种思路. var arr1 = [1,2,3,4,5,6]; 思路一 ...
- JS思维之路菜鸟也能有大能量-序幕
准备写一类关于Js的开发思想的文章,这系列文章需要有一定的js基础,在这里不会去说太多的js基础知识,因为这系列文章不是写基础东西,而是一种编程思想,如果你还是js新手,那么建议你有一定基础后再看. ...
- 关于JS历史拓展
js由来 95年那时,绝大多数因特网用户都使用速度仅为28.8kbit/s 的“猫”(调制解调器)上网,但网页的大小和复杂性却不断增加.为完成简单的表单验证而频繁地与服务器交换数据只 ...
- Relation.js——基于pixi.js的拓展模块之人物关系图谱
出于[重构基于D3的关系图谱项目]的目的,在看完pixi.js之后,并且网上又没有现成的基于webgl的关系图谱js库,于是,本人决定自己写一个. 因为平常要工作的原因,进度可能有点慢,但是githu ...
- Angular.js思维导图
AngularJS的四大特性的思维导图如下: 将AngularJS应用于工作:其思维导图如下: AngularJS服务思维导图:
- 前端-Node.js思维导图笔记
看不清的朋友右键保存或者新窗口打开哦!喜欢我可以关注我,还有更多前端思维导图笔记
随机推荐
- rpm 命令的使用
rpm -ivh xv-3.10a-13.i386.rpm 在Terminal中,基本的安装指令如下: rpm -i xv-3.10a-13.i386.rpm 如果你的连网速度足够快,也可 ...
- P1009 阶乘之和 洛谷
https://www.luogu.org/problem/show?pid=1009 题目描述 用高精度计算出S=1!+2!+3!+…+n!(n≤50) 其中“!”表示阶乘,例如:5!=54321. ...
- memory management in oracle 11G R2
When we talking about memory management in Oracle, we are refering to SGA and PGA. The management me ...
- android 程序猿跳槽须要注意哪些?
我是一个工作3年多的android开发,因为公司和个人发展原因.打算跳槽! 这次跳槽又给我好好的上了一课!所以我自己反思总结了一下.然后整理出一下几点 程序猿打算跳槽的时候须要注意的几点. 一 先想好 ...
- 转 BlockingQueue(阻塞队列)详解
转自 http://wsmajunfeng.iteye.com/blog/1629354 前言: 在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输” ...
- jvm 堆内存 栈内存 大小设置
4种方式配置不同作用域的jvm的堆栈内存. 1.Eclise 中设置jvm内存: 改动eclipse的配置文件,对全部project都起作用 改动eclipse ...
- HDU 5305 Friends(dfs)
Friends Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Su ...
- Cygwin与minGW
这几天关注了一下它们, 事实上我是不想安装一下vs来编写一些小东西. 本来想写个小exe,于是跑到vs的bin以下把cl与link搞出来,却发现cl还要配置什么的,也不太清楚直接就二个exe与部分dl ...
- 创建FTP服务
Step1: Create a FTP folder in your C disk, named “AutomationReport” Step2: Install IIS components. ...
- ios15--综合小例子
// // XMGViewController.m,控制器类 #import "XMGViewController.h" #import "XMGShop.h" ...