Node.js数据类型

作者: yes_heng | 来源:发表于2017-05-03 23:16 被阅读90次

Data type

数据类型

基本数据类型(6种)

保存在栈内存的简单数据段,访问方式为按值访问。

  • String
  • Number
  • Boolean
  • Null
  • Undefined
  • Symbol(ES6)

其中null与undefined是特殊的数据类型,Null表示值为空,Undefined表示没有定义;
Symbol是在ES6新增加的基本数据类型。

let m = 1;
栈内存
m 1
m = 2; // 操作的是变量m中实际保存的值
栈内存
m 2
let n = m; // 把m复制到n,栈中创建多一个新的变量n,值为m的值1
栈内存
m 1
n 1
//然后把m的值2赋予n
m // 1
n // 2
栈内存
m 1
n 2

引用数据类型

指保存在堆内存中的对象。访问方式是按引用访问。
也就是,变量中保存的只是一个指针,这个指针指向内存中的另一个位置,该位置保存着对象。

  • Object
const Pet = new Object(); // 变量保存的是一个指针,指向堆内存中保存的对象。
栈内存 堆内存
Pet 引用指针 ---> Object
// 操作对象时,需要先从栈内存中读取堆内存地址,然后再找到保存在对内存中的值,再操作。
Pet.name = 'dog';
栈内存 堆内存
Pet 引用指针 ---> Object{name: 'dog'}
// 复制操作:复制的是栈内存中的指针,复制的指针与原指针指向同一个堆内存中保存的值。
const Animal = Pet;
栈内存 堆内存
Pet 引用指针 ---> Object{name: 'dog'}
Animal 引用指针
// 操作的是引用指针指向的Object
Animal.color = 'red';
Pet // { name: 'dog', color: 'red' }
Animal // { name: 'dog', color: 'red' }
Animal === Pet // true
栈内存 堆内存
Pet 引用指针 ---> Object{name: 'dog',color:'red'}
Animal 引用指针

相关文章

  • 08 全局-Buffer

    Node.js Buffer(缓冲区) JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。 但...

  • Day5 Node.js Buffer(缓冲区)

    Node.js Buffer(缓冲区) JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。 但...

  • NODE 学习第三天

    Node.js Buffer(缓冲区) JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。 但...

  • Node.js<三>

    Node.js Buffer(缓冲区) JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。但在...

  • node.js中缓冲区--Buffer

    Node.js中Buffer简介: JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。但在处理...

  • node.js(九)

    Node.js Buffer(缓冲区)JavaScript 语言自身只有字符串数据类型,没有二进制数据类型。但在处...

  • 微信小程序 Node.js (基础六) Buffer(缓冲区)

    微信小程序Node.js Buffer: JavaScript语言自身只有字符串数据类型,没有二进制数据类型。 但...

  • 02node.js

    Node.js Buffer(缓冲区)01、创建 Buffer 类JavaScript 语言自身只有字符串数据类型...

  • JS深拷贝和浅拷贝

    js中有一些基本数据类型,而对象就是像这样的{ name: 'Larry', skill: 'Node.js' }...

  • Node.js数据类型

    Data type 数据类型 基本数据类型(6种) 保存在栈内存的简单数据段,访问方式为按值访问。 String ...

网友评论

    本文标题:Node.js数据类型

    本文链接:https://www.haomeiwen.com/subject/kxaltxtx.html