JavaScript百炼成仙之斗师境界

1 入门
1.1 基本数据类型
1.1.1 数字 字符串 布尔值 null undefined
1.2 对象数据类型
1.2.1 第一种定义方法
var test = {
	name: "叶",
	age: 13
}
console.log(test);
1.2.2 第二种定义方法
var test = {}
test.name = "叶小凡";
test.age = 29;
console.log(test);
1.2.3 对象对于属性和方法的调用

第一种

var test = {
	name: "叶",
	age: 13
	}
 console.log(test.name);

第二种

var test = function(){
	name: "叶",
	age: 13
	}
var props = "name";
console.log(test[props]);

通过for循环遍历数组来获取属性,此时属性为变量,用第二种方式。

1.3 运算符

加 减 乘 除 取余 自增 自减

2 数组的定义
2.1 常见定义
var test = [1,2,3];
2.2 通过数组对象定义
var test = new Array();
2.3 通过数组对象定义且给数组设置初始空间
var test  = new Array(1024);
2.4 通过数组对象定义且给数组赋初值
var test = new Array("叶小凡","叶宗师");
2.5 数组的属性(多长)
var test = new Array(1024);
console.log(test.length);
2.6 数组的方法
push(); 将数据添加到数组末尾
pop();将数组末尾的数据删除
splice();根据参数不同:两个参数,第一个是操作的起始位置,第二个是操作的个数,第三个是在操作位置添加的数据,第四个紧跟第三个数据
3 函数
3.1 第一种定义方法
function test() {
	console.log("this is a function test");
 }
3.2 第二种定义方法
 var test = function(){
 console.log("this is also a function test");
 }
3.3 作用域

全局作用域和函数作用域,全局作用域对全局有效,函数作用域对函数内部有效。
函数内部作用域可以调用函数外部作用域,但是函数外部的作用域不能调用函数内部的作用域,相当于每个函数都是一个独立的家,但是均摊面积(全局作用域)是公用的。

3.4 参数

对于函数而言,如果有参数,在调用的时候需要传入参数。

function test(a,b){
	console.log(a+b);
}
test(1,3);

这样面临一个问题,就是如果传入多余参数,结果是否会失真呢!!!

//这样肯定运行不出来,
function test(a,b){
	console.log(a+b);
}
test(1,3,2);

函数中存在一个arguments数组,用来存参数。
在这里插入图片描述

3.5 闭包

闭包:函数内部嵌套函数
从作用域的角度来看,建立闭包可以避免函数在函数作用内调用以后销毁,也可以在通过全局作用域调用函数内部的函数。
???
在这里插入图片描述
通过闭包可以将函数内部的变量提升,提升为全局变量去操作。那么,为什么不直接去建立一个全局变量呢!!!这不是属于脱裤子放屁嘛!!哎!不对,在你拉肚子时期,真真的不要相信每一个屁,这裤子还是得脱。

哦。哦。哦。
在这里插入图片描述

依旧从房子的居住面积(局部作用域)和公摊面积(全局作用域)来看,如何你家里的自行车(变量)放在楼道过道里,他家的电瓶车(变量)也放,那这个公摊面积咋办,所以我们可以把车子放家里,但是我们可以经过公摊面积来将自行车推到楼下。

//闭包展示
function test(){
	var a = 0;
	return function(){
			console.log(a);
	}
}
//调用
test()();
3.6 自执行函数

无名但是有型 ()();
可以简化闭包:

var BB = (function test(){
	var a = 0;
	return function(){
			console.log(a);
	}
})();
//调用函数
BB();
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值