一、模板字符串
二、函数/实参/形参
1. 没有名字的函数叫做匿名函数!
匿名函数不能独立存在的,因为没有意义找不到它,匿名函数要独立存在,必须要有名字。
格式
function fn () {
console.log("fn函数调用成功");
}
- 通过 console 输出 fn
()

image.png
2. 有名函数/具名函数
- 通过变量赋值给这个函数的,这个变量就是这个函数的名字
let fn1 = function () {
console.log("fn1函数调用成功");
}

image.png
函数一旦加
()就是调用(执行函数)自执行
// 点击时才会执行(没加括号);
document.onclick = fn;
function fn (){
console.log("click");
}
// 加了()就会自动执行了,不会依赖于前面的事件
- 存储在数组里
let arr = [function (){
console.log("这是数组的数据");
}];
document.onclick = arr[0];
- 存储在JSON对象里
let obj = {
a : function () {
console.log("ojb里的a函数");
}
}
obj.a();
3. 函数声明 和 函数表达式的区别
函数声明:不能自动执行,必须通过函数名()
function fn(){
}
函数表达式:可以加括号自执行
let fn1 = function(){
console.log("123");
}();
4. 可以根据配置环境的不用,做出不同的反馈
// 实际参数 实参
fn(1,2);
fn(2,3);
fn(3,4);
// 形势参数 形参
function fn (a, b) {
console.log("计算开始");
console.log( a *= b );
console.log("计算结束");
console.log("");
}
形参没有找到对应的实参,就相当于 定义一个变量没给它赋值,所以显示
undefined;
如果我们期望给b传递一个参数,但是b没有默认值
我们可以直接在形参后面指定默认值;
b只有在实参没有取到值的时候生效
fn(1);
fn(2, 3);
fn(3, 5);
function fn( a , b = 4 ){
console.log("计算开始");
console.log( a + b );
console.log("计算结束");
}
如果形参没有设置默认值,系统会自动给实参传递一个
undefined
带默认值的形参一般要放在后面
function fn( a , b = 4 )
三、自定义属性/自定义标签属性
1.自定义属性
function fn(){};
let obj = {};
let arr = [];
fn.chuxin = 123;
console.log(fn.chuxin);
访问一个对象不存在的属性,那么就相当于这个对象默认值有一个
undefined.操作符就是来获取一个对象的属性的
也可以使用 [] 里面不加 "" 获取的就是一个变量,加了获取的就是它的属性
function fn(){};
let obj = {
a : 1,
b : 2
};
let arr = [];
let a = "b";
console.log(obj[a]);
- 数值通过
[]来访问属性的时候,[]里面加不加字符串都是表示拿到它的属性;
// 还是拿到它的属性
console.log(arr["0"]);
寄存在标签中的属性,叫做自定义标签属性
寄存在JS环境中的属性,叫做自定义属性
获取自定义属性:直接通过 . 来获取
<div id="box" cx="123"></div>
<script>
let cx = "132";
console.log(cx); // 获取到的是 132
</script>
获取自定义标签属性:通过 api . getAttribute("自定义属性名");
<div id="box" cx="123"></div>
<script>
cx = "456";
console.log( box.getAttribute("cx") ); // 获取到的是 123
</script>
设置自定义标签属性 :通过 api . setAttribute("自定义属性名","值");
<div id="box" cx="123"></div>
<script>
cx="456";
box.setAttribute("cx", "我爱你");
</script>

image.png
删除自定义标签属性:api . removeAttribute("自定义属性名");
<div id="box" cx="123"></div>
<script>
cx="456";
box.removeAttribute("cx");
</script>
function fn(a, b) {
let res = a + b;
return res;
}
let num = fn(1,2);
console.log(num);
函数执行结束,默认返回undefined;
函数里只能有一个return,遇到return就停止运行。并且把return后面的值返回出来
自定义获取ID方式
<div id="box"></div>
<script>
let a = getId("box");
function getId(str){
return document.getElementById(str);
}
a.innerHTML = "132";
// 通过设置一个函数 实参 box
// 调用这个函数,给它传一个形参
// 返回值,就是找到这个Id本身
</script>