JS-语法进阶
三元运算符
<script type="text/javascript">
//三元运算符经常给变量赋值
console.log(true?"我是小明":"我是小红");//我是小明
console.log(false?1:2);//2
console.log(0?"a":"b");//b
console.log("我是小明"?1+1:6);//2
var age = true? 16 : NaN;
console.log(age);//16
</script>
类数组对象
<script type="text/javascript">
//函数的函数中才有类数组对象
//类数组对象不是数组,类似数组,只能使用数组的length属性,数组的方法都不能使用
//类数组存在的意义:可以在没有形参的情况下,获取实参
function fun(){
console.log(arguments);//Arguments [callee: ƒ, Symbol(Symbol.iterator): ƒ]
console.log(typeof arguments);//object
}
fun();
function fun1(){
var sum = 0;
console.log(arguments);//Arguments(6) [1, 2, 3, 4, 5, 6, callee: ƒ, Symbol(Symbol.iterator): ƒ]
for (var i = 0;i<arguments.length;i++) {
sum += arguments[i];
}
// arguments.pop();错误写法
console.log(sum);//21
}
fun1(1,2,3,4,5,6);
</script>
闭包
<script type="text/javascript">
//闭包:一个可以访问其它作用域中变量的函数
//全局变量num
var num = 100;
//声明一个函数
function fun(){//闭包
num++;
console.log(num);
}
//调用
fun();
</script>