js怎样判断引用类型和值类型?

2023-11-08

1:typeof 输出的类型

            console.log(typeof y);    // undefined
            console.log(typeof 101);   // number
            console.log(typeof 'hello'); // string
            console.log(typeof true);  // boolean

            console.log(typeof function () {});  //function

            console.log(typeof ['world', false, 100]);  //object
            console.log(typeof { a: 10, b: 20 ,c: 3});  //object
            console.log(typeof null);  //object
            console.log(typeof new Number(100));  //object

最上面的(undefined、number、string、boolean)属于简单的值类型,不是对象;剩下的(函数、数组、对象、null、new Number(100))均为引用类型;

2:区分引用类型和值类型

我们可以用typeof判断值类型,用instanceof判断引用类型的

var obj = {a:100, b:3};
if(obj instanceof Object) return true; //true,说明obj属于引用类型

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

js怎样判断引用类型和值类型? 的相关文章

随机推荐

  • vue 设置提示 @ 路径 和 ~@ 路径

    菜鸟最近用公司的电脑开发 结果发现之前有的路径提示全没了 感觉非常难受 然后去插件一看才发现 好像是菜鸟自己不小心把这个插件给删了 有点难受 但是安装了这插件还是有点不好用 就是感觉每次使用了 vue 的 或者 开头的路径时 总是没有提示
  • React:‘XXX’ is defined but nerver used的解决方法

    原因 想引入Login组件 但是一直显示 组件被定义但从未使用 的字样 但是我明明就有引用吖 解决方法 原来是组件的文件名首字母需要大写 因为要做项目 但是React的基础课程还没学完 只好以这种半桶水的知识与头脑去做项目 难免会遇到很多困
  • 关于车载以太网理解

    目录 1 车载以太网概述 2 物理层 PHY 2 1 总体说明 2 2 物理层架构 2 3 物理层控制器的架构 2 4 物理层编码原理 3 链路层 MAC 3 1 MAC控制器架构 3 2 MAC地址 3 3 数据传输 3 4 MAC帧格式
  • 【拜小白的机器学习】5-机器学习的评估度量标准(评估)

    在上一节中我们主要讲到机器学习的评估方法 其中重点是讲解了三种对数据集的划分方式 包括留出法 hold out 交叉验证法 k fold cross validation 自助法 bootstrap 本节来看看机器学习的评估度量标准 其中我
  • Spring之功能使用

    文章目录 注入bean 配置文件 set方式 构造方法注入 根据参数类型注入 根据构造函数的顺序 类型和顺序混合使用 使用name来注入 工厂模式注入 少用 注入不同的类型 字面量 引用其他bean 内部bean 设置null 联级设置属性
  • html+css+js实现星空特效

    html css js实现星空特效 本文已同步到凯文的博客https kevindurant source github io 废话不多说直接上代码 效果是一个星空旋转和文字逐渐出现的效果 文字是逐渐出现的 星空中的小球是旋转的 效果视频博
  • 词法分析器简介

    词法分析器简介 引言 编译器的工作的开始 就是读入源码 预编译先不考虑 然后 去除一些空字符 然后经过词素匹配 并和其属性 可选 组成一个的词法单元 多个词法单元 连接成词法单元序列 自此 此法分析器的工作就算完成了 呵呵 就这么简单 可见
  • sourcetree创建分支与分支合并

    一 Sourcetree简单介绍 通过Git可以进行对项目的版本管理 但是如果直接使用Git的软件会比较麻烦 因为是通过一条一条命令进行操作的 Sourcetree则可以与Git结合 提供图形界面 使用会方便很多 Git和Sourcetre
  • Flowable BPMN 用户手册 (v 6.3.0)

    小编本来想学习 activity但是被同事强烈推荐学习Flowable 百度了一下发现Flowable是activity的一个升级 第一步找学习资料 找到一个分享给大家 https tkjohn github io flowable use
  • linux的核心安装下的命令行,linux lilo命令安装核心载入,开机管理程序

    lilo linux loader 安装核心载入 开机管理程序 语 法 lilo clqtV b C d D f i I m P r R s S uU v 补充说明 lilo 是个 Linux 系统核心载入程序 同时具备管理开机的功能 单独
  • 合理使用 inline来优化程序 尽可能减少临时对象 尽可能使用初始化列表

    1 合理使用inline 调用 函数实际上将程序执行顺序转移到函数所存放在内存中某个地址 将函数的程序 内容执行完后 再返回到转去执行该函数前的地方 这种转移操作要求在转去前 要保护现场并记忆执行的地址 转回后先要恢复现场 并按原来保存地址
  • Would you like Visual Studio Code to periodically run “git fetch“?是什么意思?

    这句话的意思是 你是否想让Visual Studio Code定期运行 git fetch 命令 git fetch 是 Git 命令之一 用于从远程代码仓库获取最新的代码变动 但不会自动将这些变动合并到你当前所在的分支 该命令通常用于更新
  • Python os.path模块的使用

    Python os path模块的使用 Python的os模块是一个对接操作系统的模块 当我们需要对路径进行操作时 可以使用os path os path模块实现了很多处理长文件名 长路径名的函数 可以用来对路径切分 拼接 转换等 先导入o
  • Seata分布式事务失效踩坑记录

    在学习Seata过程中 偶然发现了一个坑 这里做个记录 环境说明 先说下我的环境 我是搭建了一个SpringCloud微服务 然后A服务调用B服务 然后在这两个服务都集成了Seata 集成过程是没有问题的 业务场景是注册场景 A服务中需要操
  • 01-java学习笔记【接口与抽象类】

    这些是我自己的理解加上网上优秀的分享总结出来的 抽象类是用来捕捉子类的通用特性的 它不能被实例化 只能被用作子类的超类 抽象类是被用来创建继承层级里子类的模板 接口是抽象方法的集合 如果一个类实现了某个接口 那么它就继承了这个接口的抽象方法
  • papers with code介绍(人工智能方向研究生的必备网站)

    paperswithcode介绍 人工智能方向的必备网站 本文将从两个部分介绍 一 正文 二 导航 A browse State of the Art B Datasets C Method D More 网站首页 一 正文 2 最上面是四
  • Python中RSA加密

    文章目录 RSA加密 一 概述 1 简介 2 签名 3 环境配置 二 算法实现 1 公钥和私钥 2 加密和解密 3 签名和解签 RSA加密 一 概述 1 简介 RSA是非对称的 也就是用来加密的密钥和用来解密的密钥不是同一个 和DES一样的
  • LCD背光控制芯片

    PWM信号可通过调整占空比来调节输出电压 可以使用PWM来控制LCD的背光 但CPU的pwm引脚驱动能力太弱 常外接一个背光芯片 rt9293就是这样的一个恒流升压转换器 Iled Vref Rset Vfb Duty 300mV Duty
  • 论文阅读_大语言模型_Llama2

    英文名称 Llama 2 Open Foundation and Fine Tuned Chat Models 中文名称 Llama 2 开源的基础模型和微调的聊天模型 文章 http arxiv org abs 2307 09288 代码
  • js怎样判断引用类型和值类型?

    1 typeof 输出的类型 console log typeof y undefined console log typeof 101 number console log typeof hello string console log