函数是JS的一个重点,函数就是代码复用的一种机制或是将代码封装成功能的代码段,函数一共有两种定义方式
函数声明的方式定义一个函数
function + 函数名:一般用单词的动词,例如getMax... +参数列表:此处一般是形参也可以是一个函数){
函数体:可执行的代码
函数后面可以有一个return;(return后面加上需要返回的值,如果没有写return或者return后面没有写返回值,那么函数最后返回undefined,当没有return的时候,函数只是为了执行代码,return语句下面不要加代码,因为不会执行)
}
推荐的做法是让函数始终返回一个值,要么就不要返回,如果返回多个值,可以放在数组或对象里。
匿名函数:像赋值运算符后面的这种没有名字的函数叫做匿名函数。一般多用于绑定事件的时候。
var + 变量:例如a,b,c... =function(参数){
函数体;
return ...;
}
两种函数的共同点是:都可以执行调用
不同点是:函数声明的函数是用函数名来调用,JS有预解析的功能,预解析的时候函数声明的函数可以提升到作用域的最前面
而函数表达式没有名字,需要使用的时候用变量来调用,当JS预解析时,变量的声明(仅仅只是声明).函数的声明.参数会提示到作用域最前面,这样会造成函数表达式无法运行。
在JS中是没有块级作用域的,只有全局作用域和局部作用域,全局作用域就是同一个script标签之间的区域,所有变量都能在作用域任何一个地方使用,函数内没有用var 声明的变量也属于全局变量。而局部作用域就是指一个函数里的区域。

为了简写,有了一个自执行函数:
举例:var sum =function(a,b){
return a+b;
}
它的自执行函数就是
(Function(a,b){
Return a+b;
}( ));
或者(Function(a,b){
Return a+b;
})( );
此处函数最后面的;不能省略
还有一种回调函数,就是把函数写在参数里进行引用。
JS中的数据类型分为两种,一种是简单数据类型,比如number ,string ,boolean ,null ,undefined,其中boolean一共就两个数据类型,null和undefined是比较特殊的类型,只有一个。
第二种是复杂数据类型,就是指对象,现在接触到的有Array ,Date,function
开发者还开发一些比较特殊的函数,Math就是其中一个,Math的使用就是函数的提取,常用的有
Math.pow(x,y);x的y次幂
Math.round(四舍五入,小数);
Math.ceil(向上取整,小数);
Math.floor(向下取整,);
Math.max(x,y,z...);
Math.min(x,y,z...);
Math.random();生成一个[0,1)的随机数,1是取不到的
以上是函数的一些内容,下面还将介绍日期Date的使用,
Var date=new Date();命名和数组有点像
console.log(date);=console.log(date.toString);第一种写法内部默认调用了toString
Console.log(date.valueOf());会打印出一个13位的数字,指的是从1970年1月1日00时00分00秒000毫秒开始计算的毫秒,1000毫秒=1秒
外国人一般用date.toDateString表示日期,用toTimeString表示当天时间;像我们在中国也有另外一个方法,date.toLocalDateString表示日期,toLocalTimeString表示时间,这样打印出来的时间和日期更贴合中国人的审美
var date = new Date(2016,6,31); 外国人的计算方式,月份是从0开始
var date = new Date("2016-07-31");
var date = Date.parse("2016-07-32") ; // 解析

var date = Date.now(); //TTML5里有的方法,IE9之后的浏览器才支持
var date = +new Date(); // 用的最广泛的,各浏览器都支持的
console.log(date);
Var date=new Date(2016,8,1);
可以接受三种参数:
2016,8,1日期的每一部分 这个是外国人的计算方式,月份从0开始
“2016-8-1”字符串的日期格式
表示日期的毫秒形式 十三位数字
如果不是以上三种方式,那么返回NaN

日期格式化
getTime() 返回毫秒数和valueOf()结果一样
getMilliseconds()
getSeconds() 返回0-59
getMinutes() 返回0-59
getHours() 返回0-23
getDay() 返回星期几 0周日 6周6 0--6
getDate() 返回当前月的第几天,当月的几号
getMonth() 返回月份,从0开始
getFullYear() 返回4位的年份 如 2016

第三部分是Array,即数组
两种创建数组的方式:
Var arr=[ ];
Var arr=new Array[ ];
.length表示数组的长度,例:var arr=[“a”,”b”,”c”,”d”];
Length就是4,arr[0]=”a”,arr[1]=”b”
转换数组:把数组转换成字符串.toString
返回数组对象本身.valueOf()
操作数组:join() 括号里面可以写用什么隔开数组,例如:join(“*”)
Concat 例如:var arr=[12,23]; var arr1=[34,56];
Var arr2=arr.concat(arr1); console.log(arr2);
arr2=[12,23,34,56];arr和arr1不变

数组的追加删除前项后项
push() 添加到数组的
pop() 删除数组的最后一项
shift() 删除数组的最前一项
unshift() 添加到数组的最前面

转载于:https://www.cnblogs.com/sw1990/p/5727163.html

JS函数,数组,日期相关推荐

  1. js中数组原型Array、自定义原型函数Array.prototype

    全栈工程师开发手册 (作者:栾鹏) js系列教程1-数组操作全解 js中数组原型.自定义原型函数 每个数组都包含length.prototype.constructor属性. 通过在prototype ...

  2. clickhouse 常用函数 算数函数 时间函数 日期函数 字符串函数 比较函数 数据类型函数 逻辑函数 类型转换函数 替换函数 数组函数 随机函数 编码函数 UUID URL IP 函数

    clickhouse 常用函数 算数函数 时间函数 日期函数 字符串函数 比较函数 数据类型函数 逻辑函数 类型转换函数 替换函数 数组函数 随机函数 编码函数 UUID URL IP 函数 算数函数 ...

  3. JS删除数组元素的函数介绍

    有时候我们需要数组元素的值,那么就可以参考下面的方法,文中提到了不少这方面的资料,数组去重功能等 split将字符串转为数组并输出的代码: 复制代码 代码如下: <script language ...

  4. js验证开始日期不能大于结束日期_Excel之日期与时间函数YEAR/MONTH/DAY/DATE/DATEFIF...

    本部分主要包括YEAR函数.MONTH函数.DAY函数.DATE函数.TODAY函数.NOW函数.HOUR函数.MINUTE函数.SECOND函数.TIME函数.DATEDIF函数.DAYS函数.DA ...

  5. js函数判断服务器文件是否为空,Js 判断数组是否为空或是否含有某个值

    今天来说一下在前端的 JS 中关于数组的判断操作.比如 JS 判断数组是否为空,JS 判断数据中是否含有某个值.下面就来具体的说一下判断的方法吧. JS 判断数组是否为空 JS 判断数组是否为空,只要 ...

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

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

  7. 【JS教程】100+常用JS函数(方法)

    为什么80%的码农都做不了架构师?>>>    100+常用JS函数(方法) 1. document.write("");为 输出语句 2. JS中的注释为// ...

  8. api日常总结:前端常用js函数和CSS常用技巧

    我的移动端media html{font-size:10px} @media screen and (min-width:321px) and (max-width:375px){html{font- ...

  9. 简单常用JS函数集合大全107个

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

  10. js函数使用详细讲解!

    文章目录 使用函数 定义函数 声明函数 构造函数 函数直接量 定义嵌套函数 调用函数 函数调用 函数的返回值 方法调用 使用call和apply调用 使用new调用 函数参数 形参和实参 获取参数个数 ...

最新文章

  1. 关于vmstat,top,ps aux查看的cpu占用率不一致的问题
  2. [Go] go get获取官方库被墙解决
  3. lnmp环境搭建 wordpress 博客系统
  4. python实现倒n字形排列_Leetcode问题库——Z形变换(Python),补充X形变换,字形
  5. 天天向上续python3.3_Linux 配置系列 四 python3
  6. html5 输入用户名和密码登陆网址,192.168.5.1路由器登录入口用户名和密码
  7. oracle 修改sgamaxsize_Oracle修改表空间大小
  8. 字节跳动面试官:千峰java培训多少钱
  9. 走进AngularJs(一)angular基本概念的认识与实战
  10. 在线考试系统的倒计时
  11. 云原生个人线路 Docker容器化
  12. 有关计算机的英语名言,100句超级简洁但有力量英文励志名言
  13. mysql 分钟转小时_将分钟转化为**小时**分钟,,将秒转化为**天**小时**分钟**秒...
  14. 煮一锅信息化石头汤(转)
  15. 在与SQL Server建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器。请验证实例名称是否正确并且SQL Server已配置为允许远程连接。(provider:命名管道提供程序,
  16. 与5000多名员工谈话之后,Google发现了远程工作的9条秘诀
  17. 搜索总结)(深搜和广搜)
  18. 一部一台阶,直达LTE之巅——《学好LTE》丛书简介
  19. matlab空间杜宾模型命令,matlab 空间杜宾模型
  20. 嵌入式风口已来,如何乘风而上?

热门文章

  1. oc - NSArray基础用法总结
  2. 解决Windows和Ubuntu时间不一致的问题
  3. 静能沉淀浮躁,过滤浅薄,调节精神。 静能解读生命的安宁,拥有了然于心的平静。...
  4. jQuery中live函数的替代-【jQuery】
  5. 使用RMAN传输表空间复制数据
  6. 数据结构之内部排序算法总结笔记
  7. [转]学习c++的50条忠告
  8. mfc连接mysql增删改查_java实现mysql数据库增删改查
  9. mysql 交互命令 导出_MySQL数据导入导出方法与工具(2)
  10. linux透明防火墙--br_netfilter