<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>函数</title>
</head>
<body>
<script type="text/javascript">
//使用 for 循环、while 循环和递归写出 3 个函数来计算给定数列的总和。
var a1 = [1,2,3,4,5,6,2,3,4,5,6,3666666];
function sum(m){
var len = m.length;
var result = 0;
for(var i=0;i<len;i++){
result = result+m[i];
}
alert('使用 for 循环弹出的结果'+result);
}
sum(a1);
function sum1(n){
var len = n.length;
var result = 0;
var i = 0;
while(i<len){
result = result+n[i];
i++;
};
alert('使用 while弹出的结果'+result);
}
sum1(a1);
function sum2(p,n){
if(n<0){
return 0;
}else{
return p[n]+arguments.callee(p,n-1);
}
}
alert('使用递归弹出的结果'+sum2(a1,a1.length-1));
//编写一个交错合并列表元素的函数。例如:给定的两个列表为[a,B,C]和[1,2,3],函数返回[a,1,B,2,C,3]。
var a2 = ['a','c','e','g','i'];
var a3 = ['b','d','f','h','j'];
function add(m,n){
var a4 = [];
if (m.length>0&&n.length>0) {
for (var i=0; i<m.length;i++) {
a4.push(m[i]);
a4.push(n[i]);
};
return a4;
}else if(m.length=0){
return n;
}else if (n.length=0){
return m;
};
}
alert(add(a2,a3));
//编写一个计算前 100 位斐波那契数的函数。根据定义,斐波那契序列的前两位数字是 0 和1,随后的每个数字是前两个数字的和。例如,前 10 位斐波那契数为:0,1,1,2,3,5,8,13,21,34。
function fei(num){
var result = [0,1];
if(num>3){
for (var i=2;i<num;i++) {
result[i] = result[i-1]+result[i-2];
};
return result;
}else{
return result;
};
}
alert('前 100 位斐波那契数以此为:'+fei(100));
// 编写一个能将给定非负整数列表中的数字排列成最大数字的函数。例如,给定[50,2,1,9],最大数字为 95021。

      var a5 = [98,89,9,8];
      function list(arr){
        var arr1 = [];
        for(var i=0;i<arr.length;i++){
        arr1.push(arr[i].toString());
      }
      function compare(str1, str2){
        if(str1+str2 < str2+str1){
          return 1;
        }else if(str1+str2> str2+str1){
          return -1;
        }else{
          return 0;
        }

        }
        alert('所能组成的最大数字是:'+arr1.sort(compare).join(''));
      }
      list(a5);

       

     // 编写一个在1,2,…,9(顺序不能变)数字之间插入+或-或什么都不插入,使得计算结果总是 100 的程序,并输出所有的可能性。例如:1 + 2 + 34 – 5 + 67 – 8 + 9 = 100。
var str = "123456789";
var ways = [];
function exec(str, pre) {
var a = str.split("");
if( str.length === 2 ){
ways.push( pre + a.join("+") );
ways.push( pre + a.join("-") );
ways.push( pre + str );
}else{
var c = str.charAt(0),
s = str.substring(1);
exec( s, pre + c + "+" );
exec( s, pre + c + "-" );
exec( s, pre + c );
}
}
exec( str, "" );
for (var i = 0; i < ways.length; i++) {
if( eval( ways[i] ) === 100 ){
alert( ways[i] + " = 100" );
}
};
</script>
</body>
</html>

几个js函数的更多相关文章

  1. 3.3 js函数

    1.函数语法: 函数声明的方式:function 函数名(参数1,参数2-){//函数体;}函数调用:函数名(参数1,参数2-); 函数内不一定都指定返回值. 如果需要指定返回值,可用 return ...

  2. Js函数function基础理解

    正文:我们知道,在js中,函数实际上是一个对象,每个函数都是Function类型的实例,并且都与其他引用类型一样具有属性和方法.因此,函数名实际上是指向函数对象的指针,不与某个函数绑定.在常见的两种定 ...

  3. js函数表达式和函数声明的区别

    我们已经知道,在任意代码片段外部添加包装函数,可以将内部的变量和函数定义"隐 藏"起来,外部作用域无法访问包装函数内部的任何内容. 例如: var a = 2; function ...

  4. 通用js函数集锦<来源于网络> 【二】

    通用js函数集锦<来源于网络> [二] 1.数组方法集2.cookie方法集3.url方法集4.正则表达式方法集5.字符串方法集6.加密方法集7.日期方法集8.浏览器检测方法集9.json ...

  5. 通用js函数集锦<来源于网络/自己> 【一】

    通用js函数集锦<来源于网络/自己>[一] 1.返回一个全地址2.cookie3.验证用户浏览器是否是微信浏览器4.验证用户浏览器是否是微博内置浏览器5.query string6.验证用 ...

  6. 100多个基础常用JS函数和语法集合大全

    网站特效离不开脚本,javascript是最常用的脚本语言,我们归纳一下常用的基础函数和语法: 1.输出语句:document.write(""); 2.JS中的注释为//3.传统 ...

  7. JS函数

    1.document.write(""); 输出语句2.JS中的注释为//3.传统的HTML文档顺序是:document->html->(head,body)4.一个浏 ...

  8. js函数和运算符

    函数是由事件驱动或者它被调用时执行可重复使用的代码块. <script> function myFunction(){ Alert(“hello World!”): } </scri ...

  9. JavaScript学习03 JS函数

    JavaScript学习03 JS函数 函数就是包裹在花括号中的代码块,前面使用了关键词function: function functionName() { 这里是要执行的代码 } 函数参数 函数的 ...

  10. JSF页面中使用js函数回调后台bean方法并获取返回值的方法

    由于primefaces在国内使用的并不是太多,因此,国内对jsf做系统.详细的介绍的资料很少,即使有一些资料,也仅仅是对国外资料的简单翻译或者是仅仅讲表面现象(皮毛而已),它们的语句甚至还是错误的, ...

随机推荐

  1. debian 安装svn apache 小记. AuthzSVNAccessFile 不生效问题.

    docker 使用docker镜像搭建svn+Apache环境 https://my.oschina.net/u/2006667/blog/637882 1,安装 apache ,svnapt-get ...

  2. java分享第十天(http协议简介)

    URL模式URL(Uniform Resource Locator) 地址用于描述一个网络上的资源, 基本格式如下scheme 指定低层使用的协议(例如:http, https, ftp)host H ...

  3. 制作IOS企业版App网页扫描二维码下载安装

    有时候我们需要在XX网站的主页上去扫描二维码下载,那么ios开发中如何做到这一点呢. 我给大家解答一下,这也是在最近工作中用到的部分,在网上了解了一些. 下面给大家分解一下步骤: 1.Plist 和 ...

  4. mysql 定时任务

    mysql 5.1以上支持定时任务. SHOW VARIABLES LIKE 'event_scheduler';   检查是否已开启该功能 开启计划任务功能: SET GLOBAL event_sc ...

  5. .net core 1.0 中的asp.net identity 基本使用(一)

    1.修改密码强度:打开Startup.cs,在public class Startup{}内找public void ConfigureServices(IServiceCollection serv ...

  6. Windows 10家庭版共享打印机

    原文地址:http://blog.csdn.net/Purpleendurer/article/details/50498788P.s. 原文太罗嗦,简化了一下~ 启用Guest账户 按Win+X,从 ...

  7. Oracle数据库基础知识1

    DDL语句 1.表的创建 CREATE TABLE table_name(); 例如: CREATE TABLE USER_E( id NUMBER (5), name VARCHAR(20), ge ...

  8. Linux DNS配置

    1.安装bind #安装bind yum install -y bind bind-chroot bind-utils 2.主配置文件 vi /etc/named.conf #修改监听为本机IP li ...

  9. Elasticsearch判断多列存在、bool条件组合查询示例

    and符号判断多列存在:{   "filter": {     "and": [       {         "exists": {   ...

  10. 关于IOS音频的开发积累

    1.设置类别,表示该应用同时支持播放和录音 OSStatus error; UInt32 sessionCategory = kAudioSessionCategory_PlayAndRecord; ...