函数与数组,对象

发布于:2022-12-16 ⋅ 阅读:(194) ⋅ 点赞:(0)

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=[]//空数组

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到