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思维导图笔记
		看不清的朋友右键保存或者新窗口打开哦!喜欢我可以关注我,还有更多前端思维导图笔记 
随机推荐
- js 发布订阅模式
			//发布订阅模式 class EventEmiter{ constructor(){ //维护一个对象 this._events={ } } on(eventName,callback){ if( t ... 
- [Usaco2016 Open]Diamond Collector
			题目描述 Bessie the cow, always a fan of shiny objects, has taken up a hobby of mining diamonds in her s ... 
- TCP/IP协议1
			1.分层 应用层 telent 远程登录,ftp 文件传输协议,smtp 简单邮件传送协议 snmp 简单网络管理协议 email 运输层 tcp(提供可靠的数据通信)和udp(数据报的分组从一台主 ... 
- 5-46 新浪微博热门话题   (30分)——unfinished HASH
			5-46 新浪微博热门话题 (30分) 新浪微博可以在发言中嵌入“话题”,即将发言中的话题文字写在一对“#”之间,就可以生成话题链接,点击链接可以看到有多少人在跟自己讨论相同或者相似的话题.新浪微 ... 
- J - A Bug's Life  并查集
			Background Professor Hopper is researching the sexual behavior of a rare species of bugs. He assumes ... 
- fastjson将java list转为json字符串
			1.直接用fastjson的静态方法string JSON.toJSONString(list)方法就行,JSON.toJSONString(list)将java list转为json字符串. 2.t ... 
- varnish代理server笔记
			varnish是一款开源的代理server软件.和Squid的差别是採用内存进行数据缓存. 速度很的快,并且不easy崩溃.可是奔溃之后全部数据都消失,导致全部请求全部发送至后台server端,这是其 ... 
- Win7 无法安装Office source engine 足够的权限安装系统服务怎么办
			运行CMD,输入命令:sc delete ose 重试即可. 
- word2vec 中的数学原理具体解释(六)若干源代码细节
			word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单.高效,因此引起了非常多人的关注.因为 word2vec 的作者 Tomas M ... 
- 5.3.3 deque对象
			class collections.deque([iterable[, maxlen]]) 返回一个新双向队列,当有输入迭代器时.会从左至右地加入到队列里.假设没有输入參数,就创建一个空队列. deq ... 
