函数就是完成某个功能的一组语句,js中的函数由关键字 function + 函数名 + 一组参数定义;函数在定义后可以被重复调用,通常将常用的功能写成一个函数,利用函数可以使代码的组织
结构更多清晰。

其语法结构为

function funName (arg0, arg1, … argN){
        //statements
    }

function say_hello (name, msg){
alert(“hello”+ name + “:”+ msg);
}
say_hello(“david”, “how are you today?”);

js中函数有两种方式:1声明函数;2函数表达式

上面的例子用的是声明函数,即由关键词function开头的函数,函数首先指定了函数名,即上面例子中的say_hello,直接使用函数名外加()即可调用函数。

函数表达式一般都没有函数名,它通常是某一事件的匿名函数,如

document.onclick=function(str){
alert(str);
}

return语句是函数中经常用到的,在使用return时由一下几点需要注意

1.位于return 语句之后的任何代码都永远不会执行!
2.在JavaScript中,不一定要指定返回值!
3. 定义函数的参数时,如果调用函数时没有传进参数,并不会报错,但可以在函数里面判断一下是否有传进参数。

在使用函数时对于全局变量和局部变量也应该有一定的了解:
全局变量:可以在脚本中的任何位置被引用,一旦你在某个脚本里声明了全局变量,你就可以在这个脚本的任何位置(包括函数内部)引用它,全局变量的作用域是整个脚本;
局部变量:只存在于对它做出声明的函数内部,在函数的外部无法相用它,局部变量的作用域仅限于函数内部;
例如:

function square(num){
var total;
total = num * num;
return total;
}
var total = 50;
alert(total);
var number = square(20);
alert(total);

js中还有以下几种内部函数

1.eval 接受一个字符串类型的参数,将这个字符串作为代码在上下文环境中执行,并返回执行的结果;
2.parseInt 和 parseFloat 将字符串转换为数字,前者转换的结果为整型,后者为浮点型
3.escape 和 unescape进行URL编码和解码,这种方法通常用于给服务器传递URL时。
Javascript是一种面向对象的语言,因此可以使用面向对象的思想来进行javascript程序设计。对象就是由一些彼此相关的属性和方法集合在一起而构成的一个数据实体。

1.Date 日期对象用来处理日期和时间。

var myDate = new Date();
myDate.getFullYear(); //获取完整的年份(4位,1970-????)
myDate.getMonth(); //获取当前月份(0-11,0代表1月)
myDate.getDate(); //获取当前日(1-31)
myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
myDate.getHours(); //获取当前小时数(0-23)
myDate.getMinutes(); //获取当前分钟数(0-59)
myDate.getSeconds(); //获取当前秒数(0-59)
myDate.getMilliseconds(); //获取当前毫秒数(0-999)
myDate.toLocaleDateString(); //获取当前日期
var mytime=myDate.toLocaleTimeString(); //获取当前时间
myDate.toLocaleString(); //获取日期与时间

2.Math对象

Math 对象用来处理复杂的数学运算Math对象是javascript的一个全局对象,不需要用new 创建。

Math对象的方法有以下数种
Math.abs(-2);           该方法可返回一个数的绝对值。
Math.round(5.5);      该方法可把一个数字舍入为最接近的整数。
Math.random();      该方法可返回介于 0(包含) ~ 1(不包含) 之间的一个随机数。
Math.ceil(1.4);         ceil()   方法返回大于等于x的最小整数。(取大整)
Math.floor(1.6);       floor() 方法返回小于等于x的最大整数。(取小整)
Math.pow(4,3);        pow() 方法返回 x 的 y 次幂。  (4的3次方)
例:

var luckey=Math.round(3*Math.random());
var str="谢谢参与";
if(luckey==1){
str="马尔代夫七人七日游";
}
str+="您的号码是 :"+luckey;
alert(str);

Array 数组对象

数组对象是js中十分重要的一种对象。定义数组的 3种方式为
    var week = new Array();
    var week = new Array(‘星期一’ , ‘星期二, ‘星期三’);
    var week = [‘星期一’ , ‘星期二, ‘星期三’];
数组都有length属性,表示数组中元素的个数。如week.length。获取数组中某个元素需要用到[],如week[2],表示的就是数组中序号为2的元素,因为数组中的元素的序号都是以0开始的,故而序号2表示的是数组中的第三个元素。

var arr=["标题1","标题二","标题三","标题四","标题五","标题六","标题七"];
alert(arr[3])//标题四

数组中添加元素的方法有

1.push

2.unshift

前者表示将一个或多个新元素添加到数组结尾,并返回数组新长度。后者则将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回数组新长度。
例:

var arr=["标题1","标题二","标题三","标题四","标题五","标题六","标题七"];
arr.push("come","let's go");
arr.unshift("look ","boy")
for(var i=0;i<arr.length;i++){
document.write("<br>"+arr[i]);
}

js中的函数,Date对象,Math对象和数组对象的更多相关文章

  1. JS中的函数,Array对象,for-in语句,with语句,自定义对象,Prototype

    一)函数 A)JS中的函数的定义格式: function add(a,b) { var sum = a+b; document.write("两个数的和是:" + sum); // ...

  2. JS中给函数参数添加默认值(多看课程)

    JS中给函数参数添加默认值(多看课程) 一.总结 一句话总结:咋函数里面是可以很方便的获取调用函数的参数的,做个判断就好,应该有简便方法,看课程. 二.JS中给函数参数添加默认值 最近在Codewar ...

  3. JS OOP -02 深入认识JS中的函数

    深入认识JS中的函数: 1.概述,认识函数对象 2.函数对象和其他内部对象的关系 3.将函数作为参数传递 4.传递给函数的隐含参数:arguments 5.函数的apply,call方法和length ...

  4. JS中的函数(二):函数参数(你可能不知道的参数传递)

    前言: 函数分为有参有返回值,有参无返回值,无参无返回值,无参有返回值:那么对于无参数的函数你想使用函数的调用怎么办呢?如果你想封装一个代码,实现多种功能,但是形参大于实参或者实参大于形参又该如何?本 ...

  5. JS中String类型转换Date类型 并 计算时间差

    JS中String类型转换Date类型 1.比较常用的方法,但繁琐,参考如下:主要使用Date的构造方法:Date(int year , int month , int day)<script& ...

  6. JS中的函数、Bom、DOM及JS事件

    本期博主给大家带来JS的函数.Bom.DOM操作,以及JS各种常用的数据类型的相关知识,同时,这也是JavaScript极其重要的部分,博主将详细介绍各种属性的用法和方法. 一.JS中的函数 [函数的 ...

  7. node.js 中回调函数callback(转载),说的很清楚,看一遍就理解了

    最近在看 express,满眼看去,到处是以函数作为参数的回调函数的使用.如果这个概念理解不了,nodejs.express 的代码就会看得一塌糊涂.比如: 复制代码 代码如下: app.use(fu ...

  8. JS中的函数、BOM和DOM操作

     一.JS中的函数 [关于注释] /** [文档注释]:开头两个*.写在函数上方,在调用函数时可以看到文档上方的描述信息. */   // 单行注释 /* 多行注释 */ 1.函数的声明及调用 (1) ...

  9. html css <input> javaScript .数据类型 JS中的函数编写方式 BOM总结 DOM总结

    Day27  html css div 块标签. 特点: 独占一行,有高度和宽度 span 行元素. 特点:在同一行显示,当前行满了自动去下一行显示. 不识别高度和宽度 1.1.1.1 2.输入域标签 ...

随机推荐

  1. JavaScript 总结

    1. JavaScript prototype属性是一个对象 当一个函数在定义之后 就会自动获得这个属性.其初始值是一个空对象.新建了一个名为Cat的构造函数,其prototype为一个对象,cons ...

  2. C#正则怎么判断字符串中是否有汉字

    Regex r = new Regex(".*[\\u4e00-\\u9faf].*");r.IsMatch(username)

  3. 跨域信息传递postMessage

    var sendToParent = function(event, data, listener) { var message = { event: event, data: data, liste ...

  4. ViewPager Indicator的使用方法

    原文:http://my.oschina.net/u/1403288/blog/208402 项目源码:https://github.com/wangjing0311/ViewPagerIndicat ...

  5. Android学习手记(2) Activity生命周期

    1. 单个Activity的生命周期 当只有一个Activity的时候, 首先执行onCreate->onStart->onResume. 这时, 窗口便显示在屏幕上了. 然后我们按返回键 ...

  6. WinAPI——模拟正弦波

    /*************************** * * 程序名称 : 模拟正弦波 * 作 者 : doodle777 * 版 本 : 1.1 * 日 期 : 2012-10-19 * 说 明 ...

  7. bash:ifconfig command not found for contos7.0

    CentOS7刚发布,我忍不住把DELL T410从CentOS6升级到CentOS7.好不容易等安装结束后,立即配置网络,然后在yum源上安装环境.可是执行ifconfig的时候系统提示让我傻了眼: ...

  8. 安卓手机内外SD卡互换

    相信有許多人....有內置sd太小...外置sd(sdcard2或extsd)卻只能放資料.... 一些遊戲或者是影音播放軟體....根本不會去讀外置sd(sdcard2或extsd)..... 記憶 ...

  9. iOS9之后对于NSURL的编码转换方法变化说明

    在iOS9之后,官方推荐使用下面的方法对NSString进行转换 - (nullable NSString *)stringByAddingPercentEncodingWithAllowedChar ...

  10. core java 第四章笔记

    import java.util.*; public class Employee { private static int nextid = 1; private String name; priv ...