js对象

js中的对象数据结构

  • 为什么需要对象?

    保存一个值,我可以选择用变量来存

    保存多个值,我可以选择用数组来存

    那么如果我想存储一个人的完整信息,那么我就需要对象啦~

  • 对象的组成:属性 + 方法

  • 如何创建一个对象呢?

    1. 利用字面量来进行创建 : 键值对

    e.g. var star = {

    ​ name: xxx,

    ​ age: 18,

    ​ sayHi: function() {

    ​ alert(‘Hi’)

    }}

    调用方式:star.name,star.sayHi()

    1. 利用new Object来创建:

      var lxy = new Object();

      lxy.name = ‘Noelle’;

      lxy.sayHi = function() {

      ​ alert(‘Hi’)

    2. 利用构造函数来创建:

      [好处: 上述使用字面量和原生的Object构造函数一次只能创建一个对象。但是利用自定义构造函数封装公共的属性和方法,可以一次创建多个不同的对象!!!]

      function Person(name, age) {//抽象公共部分,泛指一个类class

      ​ this.name = name;

      ​ this.age = age;

      ​ this.sayHi = function() {

      ​ alert(‘Hi’)}

      }

      var lxy = new Person(‘Noelle’, 18);//对象实例化

    3. new关键字执行时做了什么?

      • 首先,在内存中创建一个新的空对象;
      • 其次,让this指向这个新的空对象;
      • 接着,执行构造函数里的代码,给新的空对象添加属性和方法;
      • 最后,返回这个新对象(new就做了,不需要一般函数return了!)
    4. 如何遍历一个对象里的所有属性?

      for (var att in obj) {

      xxx}

    5. 常用的的JavaScript中的内置对象和内置构造函数:Math, Date, Array, String

      其中Math是内置对象,并不是构造函数,因为它不需要new进行调用,可以直接使用,不要被大写迷惑咯~


      6.1 Math(内置对象)

      • Math.floor() 向下取整
      • Math.ceil()向上取整
      • Math.round()四舍五入取整
      • Math.abs()绝对值

      6.2 Date(内置构造函数)

      • new Date() 如果括号里有参数比如’2023/5/17’就返回括号里的时间;若没有参数就反正当前时间

      • 日期格式化可用的方法:

        a. getFullYear()

        b. getMonth() 记得+1!!!!!!!

        c. getDate()

        d. getDay()

        e. getHours()

        f. getMinutes()

        g. getSeconds()


      6.3 Array (内置构造函数)

      indexOf可以查找一个给定元素的第一个索引


      6.4 String(内置构造函数)

      注意!!!!字符串所有的方法都不会修改字符串本身,操作完成返回一个新的字符串而已,所以避免大量的字符串拼接

      • charAt()返回指定位置的字符
      • substr(start, length) 返回从start开始,长度为length的子字符串f
      • slice(start, end)返回[start,end)的子字符串
      • split()将字符串切分为数组并返回

js对象
http://example.com/2023/05/17/js对象/
Author
John Doe
Posted on
May 17, 2023
Licensed under