第五章 变量的作用域,以及数组的全局方法

变量的作用域
  • 全局变量:在全局作用域下声明的变量就是全局变量,这种变量在任何地方都能被访问到.
  • 局部变量:在函数体内部声明的变量,这种变量只能在该函数体内部使用,在函数体外无法被访问或操作。
    在JS中没有块级作用域的概念,只有函数作用域的概念,只有函数才是一个封闭的作用域,在函数体内部声明的变量在函数体外部是无法访问的
  • 局部变量和全局变量冲突:以局部变量和全局变量冲突:以局部变量为准.
  • 如果想在函数体内部声明一个全局变量,那么只要去掉声明变量的var关键字即可.
  • 在布局作用域发生嵌套的时候,内层函数是可以访问到外层函数的局部变量的,反之则不行.
  • 变量提升:JS解释器的一种机制,当我们执行某一个函数的时候,js解释器会从上到下把函数中的局部变量提取出来放到函数体的顶端声明但不赋值,此时该变量里面存储的值就为undefined.
  • 参数对象:参数对象的使用场景只是在调用函数时传入实参的数量不确定的情况下,那么我们就会把形参去掉参数对象arguments来代替.参数对象的本质是一个类数组,拥有数组下标的特性和length特性.
  • 数组:若干个值得有序集合.拥有下标的特性,可以使用数组[数字]的形式从一个数组集合中提取出来某一个元素;拥有length特性,可以使用数组.length返回数组中成员的数量(数组的长度)
    //!!如何枚举(遍历,循环)一个数组
    var 数组;
    for(var i=0;i< 数组.length;i++)
    {
        数组[i];
    }
数组的全局方法:Array.方法()
  • push(exp) 向后插
  • pop() 删除最后一个
  • unshift(exp) 向前插
  • shift() 删除第一个
  • splice(index,howmany,repalcement) 添加/删除/替换
  • splice(要插入位置的下标,0,要插入的元素) 往数组中某一个位置塞一个元素进去
  • splice(要删除元素的下标,1) 从数组中删除掉某一个元素
  • concat(array) 数组拼接
  • join() 将数组转换为字符串,参数作为分隔符。
  • reverse() 颠倒数组中元素的顺序
  • slice(start,end) 从数组中截取一部分,end作为结束下标在结果集中并不包含该元素。
    // sort方法在不传入参数的情况下,默认以字符编码顺序进行排序,而非数学大小关系进行排序。
	// 使用sort进行按照数学大小关系进行排序。
	arr.sort(function(num1,num2){
		return num1-num2;
	})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值