JavaScript第七天学习总结

141 阅读3分钟

JavaScript第七天学习总结

对象

原理

  • 是一种数据类型
  • 无序的数据的集合

特点

  • 无序的数据的集合
  • 可以详细的描述某个事物

使用

1.声明语法

let 对象名 = {}

2.组成

  • 属性:信息或特征(名称)
  • 方法:功能或叫行为(动词)

3.注意

  • 对象属性没有顺序
  • 属性和值用;隔开
  • 多个属性用,隔开

4.访问属性

  • 点形式 对象.属性(点后面一定不要加引号)

    console.log(person.userName);
    
  • []形式 对象['属性'] ([] 里面的属性名加引号,除非它是一个变量)

    console.log(person["userName"]);
    

5.对象中的方法

  • 方法是由方法名和函数两部分构成,它们之间使用 : 分隔

  • 多个属性之间使用英文 , 分隔

  • 方法是依附在对象中的函数

  • 方法名可以使用 "" 或 '',一般情况下省略,除非名称遇到特殊符号如空格、中横线等

            let person = {
                name:"巫斌斌",
                sayhi:function sayhi(msg) {
                    document.write(msg);
                }
            };
            // console.log(person);
            person.sayhi("你好<br />");
            person.sayhi("你号没了<br />");
    

操作

添加和修改属性

         let person = {
            userName:'程序员',
        };
        // 如果是对象里已经有的变量名称,直接赋值就是修改
        person.userName = '普通人';
        // 如果是对象里没有的变量名称,那就是增加

向对象中添加方法

// 给变量增加函数,函数通常和匿名函数一起使用
        person.saiHi = function (){
            document.write("你好");
        };
        document.write(person.userName);//普通人
        person.saiHi();

删除属性

        let person = {
            userName:'海贼王'
        };
        // 删除属性
        delete person.userName;
        console.log(person.userName);//undefined

遍历

语句

for in

        //  数组和对象 都可以遍历
        // 数组的遍历 使用 for循环
        // 对象的遍历  使用  forin 
        // 对对象遍历的时候   可以直接获取到 对象的属性名 
        // 根据对象的属性名获取对象的熟悉值 person[k] 
        let person = {
            userName:'灰烬',
            age:18,
            height:178
        };
        // k  表示属性  
        for (let k in person) {
            console.log(k);//遍历出了对象属性
            // console.log(person.k);//报错,他会直接去找对象里的K值
            // console.log(person["k"]);//报错,他会直接去找对象里的K值
            // console.log(person[k]);//person[k]表示对象属性里的值
            console.log(`属性名${k}属性值${person[k]}`);
        }
  • 一般不用这种方式遍历数组、主要是用来遍历对象
  • 一定记住: k 是获得对象的属性名, 对象名[k] 是获得 属性值

内置对象

JavaScript内部提供的对象,包含各种属性和方法给开发者调用

内置对象Math

  • random:生成0-1之间的随机数(包含0不包括1)

            //Math.random生成0-1之间的随机一个数字,包含0不包括1      
            console.log(Math.random());
    
  • ceil:向上取整

             //Math.ceil向上取整
             console.log(Math.ceil(1.1));//输出2    相当于你去喝水你能喝一瓶半,但是你买了两瓶
    
    
  • floor:向下取整

             //Math.floor向下取整
             console.log(Math.floor(3.2));//输出3
    
  • max:找最大数

             //Math.max()找最大数
             console.log(Math.max(1,3,5,7,8,9,10));//输出10 
    
  • min:找最小数

            //Math.min()找最小数
            console.log(Math.min(1,3,5,7,8,9,10));//输出1
    
  • pow:幂运算

             //Math.pow()幂运算
             console.log(Math.pow(3,4));//34次方  43相乘
    
  • abs:绝对值

           //Math.abs()绝对值
           console.log(Math.abs(-2));//输出绝对值   2
    
  • Math.round:四舍五入

            //Math.round()四舍五入
            console.log(Math.round(0.4));//输出0
    

生成随机数案例

        // 生成0-10之间的随机数
            // 1 先生成0-1之间的随机数
            // 2 直接翻10倍
            // 3 取整数    
        console.log(Math.round(Math.random() * 10));


        // 生成5-10之间的随机数
            // 1 先生成0-1之间的随机数
            // 2 直接翻5倍
            // 3 在翻5倍的基础上再加上5
        console.log(Math.round(Math.random() * 5 + 5));


        // 生成N-M之间的随机数
        // 规律
        // Math.random() * (最大值 - 最小值) + 最小值;
        function getNum(max,min) {
            return Math.round(Math.random() * (max - min) + min);
        } 
        console.log(getNum(20,15));