JavaScript系列从入门到精通系列第十三篇:JavaScript中基本数据类型和引用数据类型,创建对象的两种方式

一:基本数据类型与引用数据类型

基本数据类型:String Number Boolean Null Undefined

引用数据类型:Object

我们的内存分成了两大块,一是栈内存二是堆内存。变量都是保存到栈内存中,var a = 123;

a和123都在栈空间,var a = new Object();a在栈空间和Object在堆空间,引用数据类型中如果多个变量引用一个对象,对象属性改变之后,所有的变量中的值都改变。

new用于创建对象,表示会在内存中开辟新的区域。每创建一个对象都会在堆空间中开辟一个空间。对应的空间地址类似于0x1234这样的数据。

二:对象创建方式

1:经典创建对象方式

javascript 复制代码
var obj = new Object();

这样写有问题,比较复杂。

2:字面量创建对象

javascript 复制代码
var obj = {};

这样与上述表示方式是一模一样,更加省事而已。使用这种方式,我们甚至可以直接添加属性。

javascript 复制代码
var obj2 = {name:"猪八戒",age:28};

为了表示更清楚,我们经常这么写。

javascript 复制代码
var obj2 = {

    name:"猪八戒",
    age:28,
    gender:"男"
};

对象字面量的属性名可以加引号或者不加引号都行。但是如果使用特殊名字,必须加引号。属性名和属性值之间。

javascript 复制代码
var obj2 = {

    name:"猪八戒",
    age:28,
    gender:"男",
    "@#$%%%%":"悟空",
    test:{"name","你的宝宝"}
};

这种方式用的多一点,但是我们实际开发过程中两个要都会用。

相关推荐
杜 硕5 分钟前
从零开始的C++生活——第七讲——02
开发语言·c++·生活
zhanghaha13147 分钟前
C# 系列教程_8 循环语句 保姆级精讲(面向新手)
开发语言·c#
麦麦麦当劳大王8 小时前
【油猴脚本】Boss直聘 岗位职责复制
开发语言·前端·javascript
starzy19909 小时前
深入理解Scala Map:从实现原理到工程实践
开发语言·后端·scala
只睡四小时10 小时前
Three.js Sub-tick:漏判 60.7%→0
开发语言·javascript·性能优化·ecmascript·游戏开发·three.js·碰撞检测
码农小河6610 小时前
基于SSM+JSP的高校专业信息管理系统【附源码+数据库】
java·开发语言·数据库
excel10 小时前
基于 GPT 的自动发布文章接口方案:从一句话或一张图片生成并发布内容
前端·javascript·后端
东鹏特饮12 小时前
系统运维(传统/通用运维)面试题
开发语言·php
今天要早睡_12 小时前
C++01_入门基础复习
开发语言·c++
黑马程序员毕设13 小时前
基于 Java 的餐饮点餐系统设计与应用报告
java·开发语言