资讯专栏INFORMATION COLUMN

JavaScript规定了几种语言类型

LMou / 314人阅读

摘要:存储引用类型的值是保存在堆内存中的对象。图解栈内存中包含了变量的标示符和指向堆内存中该对象的指针堆内存中包含了对象的内容注与其他编程语言不同,不能直接操作对象的内存空间堆内存。

两种类型:基本类型和引用类型

基本类型

6种基本类型:String,Number,Boolean,Null,Undefined,Symbol

访问:基本数据类型的值是按值访问的。

存储:基本类型的变量是存放在栈内存(Stack)里的。

图解:

栈内存中包括了变量的标示符和变量的值。

引用类型

1种引用类型:Object

访问:引用类型的值是按引用访问的。

存储:引用类型的值是保存在堆内存(Heap)中的对象(Object)。

图解:

栈内存中包含了变量的标示符和指向堆内存中该对象的指针

堆内存中包含了对象的内容

注:与其他编程语言不同,JavaScript 不能直接操作对象的内存空间(堆内存)。

检测类型:

typeof: 经常用来检测一个变量是不是最基本的数据类型

    var a;
    typeof a;    // undefined
   
    a = null;
    typeof a;    // object
    
    a = true;
    typeof a;    // boolean
    
    a = 666;
    typeof a;    // number 
    
    a = "hello";
    typeof a;    // string
    
    a = Symbol();
    typeof a;    // symbol
    
    a = function(){}
    typeof a;    // function
    
    a = [];
    typeof a;    // object
    
    a = {};
    typeof a;    // object
    
    a = /aaa/g;
    typeof a;    // object 

instanceof: 用来判断某个构造函数的 prototype 属性所指向的对象是否存在于另外一个要检测对象的原型链上。
简单说就是判断一个引用类型的变量具体是不是某种类型的对象

    ({}) instanceof Object              // true
    
    ([]) instanceof Array               // true
    
    (/aa/g) instanceof RegExp           // true
    
    (function(){}) instanceof Function  // true

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/104454.html

相关文章

  • 一名【合格】前端工程师的自检清单

    摘要:在他的重学前端课程中提到到现在为止,前端工程师已经成为研发体系中的重要岗位之一。大部分前端工程师的知识,其实都是来自于实践和工作中零散的学习。一基础前端工程师吃饭的家伙,深度广度一样都不能差。 开篇 前端开发是一个非常特殊的行业,它的历史实际上不是很长,但是知识之繁杂,技术迭代速度之快是其他技术所不能比拟的。 winter在他的《重学前端》课程中提到: 到现在为止,前端工程师已经成为研...

    罗志环 评论0 收藏0
  • 一名【合格】前端工程师的自检清单

    摘要:在他的重学前端课程中提到到现在为止,前端工程师已经成为研发体系中的重要岗位之一。大部分前端工程师的知识,其实都是来自于实践和工作中零散的学习。一基础前端工程师吃饭的家伙,深度广度一样都不能差。开篇 前端开发是一个非常特殊的行业,它的历史实际上不是很长,但是知识之繁杂,技术迭代速度之快是其他技术所不能比拟的。 winter在他的《重学前端》课程中提到: 到现在为止,前端工程师已经成为研发体系...

    isaced 评论0 收藏0
  • JavaScript简介

    摘要:发布后不久,微软就在其中加入了名为的实现命名为是为了避开与有关的授权问题。以现在的眼光来看,微软年月为进入浏览器领域而实施的这个重大举措,是导致日后蒙羞的一个标志性时间。微软推出其实现意味着有了两个不同的版本中的中的。 JavaScript简介 前言:最近在细读Javascript高级程序设计,对于我而言,中文版,书中很多地方一笔带过,所以用自己所理解的,尝试细致解读下。如有纰漏或错...

    teren 评论0 收藏0
  • 【效率专精系列】我有一个梦想:提高开发效率,晚上回家吃鸡

    摘要:效率专精系列善用统一描述语言提升开发效率分钟搞定环境配置与使用考虑到篇幅较长的文档反复修改的情况,要快速找到修改点比较困难。 之前零零散散写了几篇文章,主要是实际开发过程中一些效率痛点和相应的改善方法。今天抽空温故知新,把之前的内容串起来,做了个小总结,即《效率专精系列》小系列的总集篇。 回顾项目开发流程 开发一个新项目时,开发流程大概分成以下几步: 设计方案,并落地成设计文档 设计...

    zhaot 评论0 收藏0
  • JavaScript 编程精解 中文第三版 十、模块

    摘要:来源编程精解中文第三版翻译项目原文译者飞龙协议自豪地采用谷歌翻译编写易于删除,而不是易于扩展的代码。模块之间的关系称为依赖关系。用于连接模块的最广泛的方法称为模块。模块的主要概念是称为的函数。 来源:ApacheCN『JavaScript 编程精解 中文第三版』翻译项目原文:Modules 译者:飞龙 协议:CC BY-NC-SA 4.0 自豪地采用谷歌翻译 编写易于删除,而不是易于扩...

    justjavac 评论0 收藏0

发表评论

0条评论

LMou

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<