函数与数组,对象

jsday05

1.变量作用域

局部作用域:在函数中作用范围

全局作用域:整个js全局作用

关系

内层可以访问外层作用域变量

外层不可以访问内层作用域变量

2.变量使用规则

访问规则

1.先访问自己的作用域,如果有,就拿

2.没有,就往上一级看,如果有就拿走

3.如果没有,就往全局变量做找,如果有,就拿走‘

4,没有,则报错

赋值规则

1.先访问自己的作用域,如果有,就赋值

2.没有,就往上一级看,如果有就赋值

3.如果没有,就往全局变量做找,如果有,就拿走赋值

4,没有,则将访问的变量定义为全局变量

3.作用域链

变量访问或者赋值时,先从自己的作用域从发, 如果在自己的作用域中,无的话,往上一层去看, 层层递进,直到到达全局作用域, 这样形成的一条通过层层作用域的链子, 或者方式为作用域链

4.递归函数

函数自身调用自身,这样的函数称为递归函数

注意:递归结束的条件

改变递归条件的代码

递归函数作用

1,结果由前面推导出来,可以采用递归简化实现

对象

对象

现实生活中的对象 具体一个事物

软件世界 对象 Object 属性 方法

创建对象 var jackObj={}//创建空对象 var jackObj={ name:"jack"//姓名属性 =》name属性名和jack属性值构成 age:18//年龄属性 }

创建对象-new语句 字面量方式 var obj={ name:'jack', age:18, 属性:属性值 } 构造函数方式 var obj=new Object()//空对象 obj.name='jack', obj.age=18, 属性=属性值

对象的基本使用方法:

 //obj为对象,创建对象
        var obj = {
            name: 'jack',//对象属性
            age: 18,
            sex: '男'
        }
        // 访问对象属性
        console.log("name" + obj.name + "age" + obj.age + obj.sex)
​
        //修改属性值
        obj.name = 'rose'
        console.log('name', obj.name)
​
        //删除属性
        delete obj.name
        console.log(obj)
​
        //添加属性
        obj.score = 98
        console.log(obj)
​
​
        // 遍历对象 for-in
        for (var key in obj) {
            console.log('key', key,'value',obj[key])//key age key sex key score
        }
        //key为输出的属性名
​
        //访问属性值,属性名是变量情况
        console.log('name',obj.name)
        var _name="name"
        console.log(obj[_name])
        console.log(obj['name'])

数据类型

var num=100//number var name='jack'//string 复杂数据类型 var obj={name:'jack',age:18} obj数据类型名-》object

数组

数组属于复杂数据类型

Object var obj={ name:'jack', age:18 }

作用:key/value->键/值对的集合

数值 Array 存储一系列有序数据的集合

数组 Array 1.创建数组

var arr=[]//创建空数组

var arr=[1,2,'jack',true]

2.索引号(下标): 0 , 1, 2.。。。n

3.访问数组元素

方法一:控制台打印

console.log("arr[]",arr[0],arr[1])

方法二:创建变量,打印

4.数组长度(元素个数)

length属性 arr.length

5.遍历数组 for循环

创建数组的方式

构造函数 var arr=new Array()//空数组 括号里面只有一个数字,表示该数组有几个 字面量 var arr=[]//空数组

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值