js第四天学习小结:
(1)函数的四种形式小结:
无参无返回值
function tellstory(){
console.log("从前有座山");
console.log("山上有座庙");
}
console.log(tellstory()); // 从前有座山 山上有座庙 undefined 无参有返回值
function sayHello(){
return "Hello";
}
console.log(sayHello()); //结果:Hello 有参无返回值
function sayHello(name){
console.log("你好"+name);
}
console.log(sayHello("张三")); //结果:你好张三 undefined
有参有返回值
function getMax(a,b){
if(a>b){
return a;
}else{
return b;
}
}
console.log(getMax(4,6)); //结果:6
由此来小结一下函数里的return返回值:
1. 如果函数没有使用 return语句 ,那么函数也是有默认的返回值:undefined ,比如第一种情况tellStory(),以及第三种情况有参无返回值。
2. 如果函数使用 return语句,那么跟在return后面的值,就成了函数的返回值,第2,4两种情况。
3. 如果函数使用 return语句,但是return后面没有任何值,那么函数的返回值也是:undefined
4. 函数使用return语句后,这个函数会在执行完 return 语句之后停止并立即退出,也就是说return后面的所有其他代码都不会再执行。
(2) 所谓的重载就是函数名相同,但是函数的形参个数不同,或者形参的数据类型不同,这样就构成了函数的重载。Js中没有函数的重载。
<script>
function getSum(a,b){
return a+b;
}
function getSum(a,b,c){
return a+b+c;
}
console.log(getSum(2,3,4)); //9
console.log(getSum(2,3)) //因为c没有定义,所以结果是NaN
</script>
(3)函数变量的作用域
在JS是没有块级作用域的。块级作用域,就是一个{}之间包裹的区间。
全局作用域:
全局作用域内的变量是可以在任何地方都能访问到的
1.全局作用域内的变量就是全局变量,在全局作用域内定义的变量是全局变量,可以在页面的任何地方访问的到(包括函数内部)。
2.在函数内部不使用var定义的变量,也是全局变量。
局部作用域:一个函数就是一个局部作用域,局部作用域 内的变量称为局部变量。
(4)内置对象:
Array的内置对象:
<script>
// toString(),valueOf() ,join(),concat()
// var arr1=["abc",123,567];
// var arr2=["cde",345,678,890];
// console.log(arr1.toString()); //转化为字符串,数组中的各项用逗号隔开,内部调用join
// console.log(arr1.valueOf()); //打印对象本身
// console.log(arr1.join("|")); //将字符串数组变成字符串输出,可以在数组添加一些新的字符
// console.log(arr1.concat(arr2)); //连接另一个数组,生成一个新数组。
// slice() 从当前数组中截取一个新的数组,不影响原来的数组,
var arr=["123","234","345","456","567","abc","bcd","cde"];
console.log(arr.slice(3)); //提取从数组下标3开始向后的数组数据
// 参数start从0开始,end从1开始
console.log(arr.slice(2,4)); //提取数组下标3到数组下标4之间的数组数据
// splice() 删除或替换当前数组的某些项目,参数
console.log(arr.splice(2,1)); //删除数组下标为2的数组数据“345”
// start,deleteCount,options(要替换的项目),
// 开始位置(下标)删除元素的个数 要替换的元素
console.log(arr.splice(2,4)); //删除从数组下标2开始往后4个的数组数据。
</script>
<script>
var arr=[1,2,3,4,5,2,6,7];
// var num=arr.push("zxc",123,43,54);
// console.log(num);
// console.log(arr);
//向数组中添加元素
// var arr2=arr.pop(); //删除数组的最后一项,返回删除的数据
//console.log(arr2);
//console.log(arr);
// var arr3=arr.shift();//删除数组中的第一项,返回删除了的数据
// console.log(arr3);
// console.log(arr);
// var arr4=arr.unshift("abc","mmm","999");//从数组前面添加数据,返回添加后数组的长度
// console.log(arr4);
// console.log(arr);
console.log(arr.indexOf(2));//从前往后检索,检索到2的值返回数组下标
console.log(arr.lastIndexOf(2));//从后往前检索,检索到2的值返回数组下标
</script>
Math常见的内置对象:
<script>
var a=Math.pow(2,10);
console.log(a); //1024
console.log(Math.pow(2,5)); //32 求幂
console.log(Math.round(5.12)); //5 四舍五入
console.log(Math.ceil(5.39)); //6 天花板函数向上取整
console.log(Math.floor(5.39)); //5 地板函数向下取整
console.log(Math.abs(3)); //3 求绝对值
console.log(Math.abs(-3)); //3
console.log(Math.max(12,11,34)); //34 求最大值
console.log(Math.min(44,23,12,56)); //12 求最小值
console.log(Math.random()); //生成一个[0,1)的随机数
console.log(Math.PI); //math之中的一个属性
</script>
日期对象:
<script>
//getTime() 返回毫秒数和valueOf()结果一样
//getMilliseconds()
//getSeconds() 返回0-59
//getMinutes() 返回0-59
//getHours() 返回0-23
//getDay() 返回星期几 0周日 6周6 0--6
//getDate() 返回当前月的第几天,当月的几号
//getMonth() 返回月份,从0开始
//getFullYear() 返回4位的年份 如 2016
// var date=new Date();
// console.log(date);
// console.log(date.toString()); //返回字符串
// console.log(date.valueOf()); //可返回 Boolean 对象的原始值。
// console.log(date.toDateString()); //把 Date 对象的日期部分转换为字符串,并返回结果。
// console.log(date.toLocaleDateString()); //可根据本地时间把 Date 对象的日期部分转换为字符串,并返回结果。
// console.log(date.toTimeString()); //可把 Date 对象的时间部分转换为字符串,并返回结果
</script>
js第四天学习小结:的更多相关文章
- ExtJs学习笔记之学习小结LoginDemo
ExtJs学习小结LoginDemo 1.示例:(登录界面) <!DOCTYPE html> <html> <head> <meta charset=&quo ...
- Python 学习小结
python 学习小结 python 简明教程 1.python 文件 #!/etc/bin/python #coding=utf-8 2.main()函数 if __name__ == '__mai ...
- pthread多线程编程的学习小结
pthread多线程编程的学习小结 pthread 同步3种方法: 1 mutex 2 条件变量 3 读写锁:支持多个线程同时读,或者一个线程写 程序员必上的开发者服务平台 —— DevSt ...
- 《JS高程》事件学习笔记
事件:文档或浏览器窗口中发生的一些特定的交互瞬间,也即用户或浏览器自身执行的某种动作. -------------------------------------------------------- ...
- (转) Parameter estimation for text analysis 暨LDA学习小结
Reading Note : Parameter estimation for text analysis 暨LDA学习小结 原文:http://www.xperseverance.net/blogs ...
- dubbo学习小结
dubbo学习小结 参考: https://blog.csdn.net/paul_wei2008/article/details/19355681 https://blog.csdn.net/liwe ...
- 【转载】Hyperledger学习小结
Hyperledger学习小结 自学Hyperledger Composer也有段时间了,是时候对所学的知识总结一下了.因为没有实际项目参与的话,差不多也就到此为止了.后续可能会去了解一下以太坊的技术 ...
- js 第四章 cookie的操作
js 第四章 cookie的操作 一.学习要点 掌握cookie的简单应用 二. js 第四章 cookie的操作 了解cookie 什么是cookie? cookie 是存储于访问者的计算机中的变量 ...
- 本周JavaScript学习小结
应组长杨老师号召,写个js阶段性学习小结. emmm这周学了Linux进程通讯,学正则表达式尝试完成第一次编程作业,中秋还去平潭露营(所以...js学得很少hhh). 现在还处于感性认识阶段,浏览了一 ...
随机推荐
- KiCad 开源元件库收集
KiCad 开源元件库收集 KiCad 官方 https://gitee.com/KiCAD-CN (国内镜像) https://github.com/kicad Digikey KiCad 元件库 ...
- java对文件操作之实用
创建文件 package com.pre; import java.io.File; public class WJ { public static void main(String[] args) ...
- P2P Downloader
P2P Downloader , 当然就是 P2P 下载器了 , 就是和 比特精灵 差不多的那种 . ^ ^ 不过这个项目没有代码 , 懒得写代码了 , 就文字描述一下吧 . ^ ^ P2P 下 ...
- React 使用 PropTypes 进行类型检查
注意: React.PropTypes 自 React v15.5 起已弃用.请使用 prop-types 库代替. defaultProps 用来确保 this.props.name 在父组件没有特 ...
- Hbase Shell命令详解+API操作
HBase Shell 操作 3.1 基本操作1.进入 HBase 客户端命令行,在hbase-2.1.3目录下 bin/hbase shell 2.查看帮助命令 hbase(main):001:0& ...
- C#语法中一个问号(?)和两个问号(??)的运算符
(1).C#语法中一个个问号(?)的运算符是指:可以为 null 的类型. MSDN上面的解释: 在处理数据库和其他包含不可赋值的元素的数据类型时,将 null 赋值给数值类型或布尔型以及日期类型的功 ...
- jquery.form插件中动态修改表单数据
jquery.form jquery.form插件(http://malsup.com/jquery/form/)是大家经常会用到的一个jQuery插件,它可以很方便将表单转换为ajax的方式进行提交 ...
- 关于sdk>=23的android版本权限的问题
在SDK23也就是Android6.0.1里编写调用系统通讯录读写权限的程序,在AndroidManifest.xml中,已经配置了 <uses-permission android:name= ...
- Web Services and C# Enums
Web Service Transparency .NET support for web services is excellent in creating illusion of transpar ...
- PHP 如何自定义函数
PHP 如何自定义函数 使用Function来自定义一个函数:格式如下:function function_name( $data ){ /** * 函数操作 */}注意:函数命名和自定义变量一样.只 ...