【启发】不用循环计算1到100的和

作者:yemoo 来源:yemoo博客 时间:2009-03-04 12:16:00 

这篇日志完全是看了一篇日志后的启发,原文为: * 的eval和new Function

很少使用new Array的方式来定义数组,没想到new Array有这么一个妙用,通过new Array(n)我们可以创建n个空元素,同时也就在n个元素中间存在n-1个空白,通过join,我们可以将一些东西放在这些空白中间从而组成我们需要的特殊串,这不禁启发了我的灵感,这个特点可以使我不通过循环就可以很容易的实现一个“有规律元素的连续运算”。

比如计算1-100的数值的和。以往我们需要从1循环到100然后求和,但利用数组的这个特性我们可以通过简单的一行代码搞定,代码如下:

var i=0,sum=eval('0'+new Array(101).join('+(++i)'));

此外可以做很多类似的数学运算,比如以下几个

eval('0'+new Array(11).join('+Math.pow(++i,2)'))  //计算1-10的平方和 
eval('0'+new Array(100/2).join('+(i+=2)'))  //计算2+4+6+...100的和

这些我们以往都通过循环进行的计算,现在都可以一行代码巧妙搞定,不得不叹服编程语言隐含的灵巧,编程的世界总有太多的东西等待我们去发现。学无止境,努力吧!

标签:循环,Array,join,js
0
投稿

猜你喜欢

  • DW MX新功能试用:嵌套模板

    2008-02-03 11:35:00
  • asp代码WinHttp.WinHttpRequest.5.1使用例子

    2010-03-11 21:28:00
  • 一个asp伪静态的程序实现方法

    2010-06-28 18:56:00
  • 文案是网站的性格

    2009-09-02 13:05:00
  • asp开发Wap中的随笔

    2008-05-21 12:56:00
  • 图片格式与设计那点事儿

    2011-01-06 12:17:00
  • 安装了Office2003补丁之后,access不能用,打不开了

    2011-05-12 12:19:00
  • asp函数解决SQL注入漏洞

    2008-10-12 19:53:00
  • 解析:轻松掌握在 Mac OS X中安装MySQL

    2009-01-14 11:51:00
  • SQL Server保障数据一致性的法宝

    2008-12-26 15:21:00
  • 解读HTML:命名空间与字符编码

    2008-12-10 14:03:00
  • HTML编辑器FCKeditor使用详解

    2010-02-28 12:30:00
  • asp显示字符串前5个文字

    2008-08-10 18:47:00
  • 使用游标进行PHP SQLSRV查询的方法与注意事项

    2023-05-22 10:51:10
  • css中使用CLASS来设计网页布局

    2007-10-30 13:01:00
  • 微软补丁KB967723造成MySQL频繁无法连接

    2009-11-03 14:28:00
  • 比较简单的异步加载JS文件的代码

    2009-07-06 13:13:00
  • XML的简单读取与写入

    2008-09-04 10:35:00
  • 细化解析:SQL Server 2005 数据库镜像

    2009-01-23 13:41:00
  • 解读MySQL的InnoDB引擎日志工作原理

    2011-01-04 19:59:00
  • asp之家 网络编程 m.aspxhome.com