JS中对象基础认识

博客 分享
0 208
张三
张三 2022-05-02 17:58:43
悬赏:0 积分 收藏

JS 中 对象 基础认识

JS 中 对象 的定义和主要的创建方式

俗话说:“万物皆对象”,在 Javascript  中除了原始值几乎所有的东西都可以看做对象:

  • 布尔是对象( new 关键词定义)
  • 数字是对象( new 关键词定义)
  • 字符串是对象( new 关键词定义)
  • 日期永远都是对象
  • 算术永远都是对象
  • 正则表达式永远都是对象
  • 数组永远都是对象
  • 函数永远都是对象
  • 对象永远都是对象

 

一、什么是原始值

Javascript 中原始值是指没有属性和方法的值。

原始数据类型(拥有原始值的类型):

  • string
  • number
  • boolean
  • null
  • undefined

 

二、什么是对象

“万物皆对象”,在 Java 中对象的定义:对象就是存在的具体实体,具有明确定义的状态和行为,是面向对象编程的核心,用来描述现实世界中的实体,为计算机应用程序提供实体基础,也是完成特定任务一个封装。

Javascript 中的对象是包含变量的变量,但是对象能够包含很多值。可以理解为:对象是属性和方法的命名值得容器 

var person = {firstName:"Coder", lastName:"Yarn", age:22, eyeColor:"black"};

 

对象命名值 即 对象属性

属性值
firstNameCoder
lastNameYarn
age22
eyeColorblack

 

对象方法:方法是可以在对象上执行的动作,即在对象身上发生的事件。

属性方法
fullNamefunction() {return this.firstName + " " + this.lastName;}

 

三、对象的创建

创建对象主要三种方法:

  • 对象字面量;
    var person = {    firstName:"Coder",     lastName:"Yarn",     age:22,     eyeColor:"black",    fullName:function() {        return this.firstName + " " + this.lastName;    },};
  • new object();
    let person = new Object();    person.firstName = "Coder";     person.lastName = "Yarn";    person.age = 22;     person.eyeColor = "black";    person.fullName = function() {        return this.firstName + " " + this.lastName;    };
  • 自定义构造函数;
    function Person(){    constructor(firstName,lastName,age,eyeColor){        this.firstName = firstName;        this.lastName = lastName;        this.age = age;        this.eyeColor = eyeColor;    };    this.fullName = function() {        return this.firstName + " " + this.lastName;    };};var person1 = new Person("Coder","Yarn",22,"black");console.log(personl);console.log(person1.fullName());//打印的结果CoderYarn22blackCoder Yarn

 

注意:出于简易性、可读性和执行速度的考虑不会使用第二种方法(new Object()),而是使用第一种创建方法(对象字面量方法)。

在 ES5 中为了简化代码,将对象共同拥有的属性和方法都放在同一个函数中,这个函数就是我们自定义的构造函数,即 Java 中的类,然后可以通过 new 一个实例对象来使用这些属性和方法,不过这种方法特别地浪费内存。 ES6 后几乎都使用对象字面量方法来创建对象。

posted @ 2022-05-02 17:04 CodeYarn 阅读(6) 评论(0) 编辑 收藏 举报
回帖
    张三

    张三 (王者 段位)

    821 积分 (2)粉丝 (41)源码

     

    温馨提示

    亦奇源码

    最新会员