js对象

99 阅读2分钟

基础

写法

let  obj1//对象名={}区别于数组的=[]
={name:'',//属性:‘属性值’
age:'18',//属性之间用,隔开
sex:'北京'}

掉取对象里的某个属性

console.log( obj1["age"]) //对象[”属性“]
console.log(obj1.age) //对象.属性
console.log(obj1['age']) //对象[‘属性’]
//区别于数组的arr[n]

删除对象中的属性

//delete 对象名.属性名
//区别于数组的splice

增加对象中的属性

let  obj1={name:'',
age:'18',
sex:'北京'}
//加一个价格是22的属性,用=连接
obj1['price']='22'

它无序.怎么遍厉呢

let  obj1={name:'liu ',
age:'18',
sex:'北京'}

 obj1['price']='22'

for (let k in obj1)//遍厉简写是forin.k代表属性,可以是任何
{ console.log(k)//输出属性名
        console.log(obj1[k])//输出属性值
        }

案例,

打印学生信息

let students = [
        { name: '小明', age: 18, gender: '男', hometown: '河北省' },
        { name: '小红', age: 19, gender: '女', hometown: '河南省' },
        { name: '小刚', age: 17, gender: '男', hometown: '山西省' },
        { name: '小丽', age: 18, gender: '女', hometown: '山东省' },
      ];
      let tabltHTML = ` <table border="1" > <thead> <tr> <th>序号</th> <th>姓名</th> <th>年龄</th> <th>性别</th> <th>家乡</th> </tr> </thead> <tbody> `;
      // 遍历生成 tr
      for (let index = 0; index < students.length; index++) {
        // 开头
        tabltHTML += `<tr><td>${index + 1}</td> `;
        // <td>${index + 1}</td>
        // 对 对象 做 forin遍历  students[index]
        for (let k in students[index]) {
          // person[k]  person =  students[index]
          let person = students[index]; // 数组中的每一个对象
          // tabltHTML += ` <td>${students[index][k]}</td> `;
          tabltHTML += ` <td>${person[k]}</td> `;
        }
        //  结尾
        tabltHTML += `</tr>`;
      }
      tabltHTML += ` </tbody> </table>`;
      document.write(tabltHTML);

随机点名

let arr = [
        '赵云',
        '黄忠',
        '关羽',
        '张飞',
        '马超',
        '刘备',
        '曹操',
        '刘婵',
      ];
      function getRandom(min, max) {
        // 区间的 规律
        return Math.round(Math.random() * (max - min) + min);
      }
      // 获取一次 随机数
      // let index = getRandom(0, arr.length - 1);
      // console.log(arr[index]);
      // // 删除数组中的某一个元素
      // arr.splice(index,1);

      // let index2=getRandom(0, arr.length - 1);
      // console.log(arr[index2]);
      // arr.splice(index2,1);

      // console.log(arr);

      // 死循环  只要你数组长度>0  我就执行重复的代码
      while (arr.length > 0) {
        let index = getRandom(0, arr.length - 1);
        console.log(arr[index]);
        arr.splice(index, 1);// 根据元素的下标来删除对应的那个数据  数组中少了一个已经显示过的数据  再次随机输出肯定不会重复
      }