一, 数据类型的分类

*** 基本(值)类型**

  • Number ----- 任意数值
  • String ----- 任意字符串
  • Boolean ---- true/false
  • undefined — undefined
  • null -------- null
    *** 对象(引用)类型**
  • Object ----- 任意对象
  • Array ------ 数组(特别的对象)
  • Function ----函数(特别的对象)

二,数据类型的判断

1>基本类型
1,typeof (a);返回数据类型的字符串表达
可以判断undefined/数值/字符串/布尔值/function
但是不能判断null与object, object与array(返回值都是object)
2,a instanceof Object ;判断对象的具体类型(a是不是Object的实例)
3,=== 可以判断undefined和null

2>对象

<script type="text/javascript">var a1={          //创建a1对象a11:"name"};var a2=null;    //创建a2nullvar a3=[1,2,3];   //创建a3数组console.log(typeof(a1));  //objectconsole.log(typeof(a2));  //objectconsole.log(typeof(a3));  //object//所以数组以及null和object利用typeof区分不出来var c;//undefined是定义了未赋值var d=null;//null是定义了,且赋值,只是赋值为null,//赋值为null作用一:初始复制,表明后续会赋值为对象//赋值为null作用一:让对象=null,用来清空空间,处理垃圾数据var b1 ={       //新建一个对象b1b2:[1,'abc',console.log],     //对象的b2属性的值是一个数组b3:function(){                //对象的b3方法是一个函数console.log(b3)},b4:function(){                //函数的返回值是函数return function(){return "函数"}}};console.log(b1 instanceof Object,b1 instanceof Array); //true  falseconsole.log(b1.b2 instanceof Array,b1.b2 instanceof Object);  //true trueconsole.log(b1.b3 instanceof Function,b1.b3 instanceof Object);  //true true//想要输出“函数”console.log(b1.b4()());//不要看表面现象,你要看你得到的是什么样的数据!!!//第一次b1.b4得到的是函数,加()立即执行//执行之后返回的数据类型是函数!!要执行就再加个括号(),于是函数执行返回“函数”//也就是说,如果存在嵌套行为,看返回值是什么数据类型,再做判断。</script>

三,严格区分变量类型和数据类型

1.数据类型划分的话:基本数据类型和对象类型
2.变量类型划分的话:基本类型(存的是值,存放在栈空间)和引用类型(栈空间存放的是地址,指向堆空间中存着的数据)

js高级学习笔记(b站尚硅谷)-1-数据类型相关推荐

  1. [JS]JavaScript基础学习笔记(黑马pink+尚硅谷李立超)

    文章目录

  2. JS高级学习笔记(6)- 事件循环

    参考文章:深入理解JS引擎的执行机制        JavaScript 异步.栈.事件循环.任务队列 我的笔记:ES系列之Promise async 和 await Event Loop 前提 js ...

  3. Redis学习笔记(转尚硅谷周阳)

    教学视频 Redis官网 Redis中文官网 一.NoSQL入门概述-上 1.互联网时代背景下大机遇,为什么用NoSQL 1.1.单机MySQL的美好年代 在90年代,一个网站的访问量一般都不大,用单 ...

  4. 燕十八老师 JS高级学习笔记 之作用域链

    作用域 在JS中,函数嵌套是非常普遍的,在函数嵌套中:对变量是如何寻找的? 答: 首先在函数内寻找,寻找不到,则在外层寻找 ...直到..全局(window)区域. // 例子1var c=5;fun ...

  5. 尚学堂JAVA高级学习笔记_1/2

    尚学堂JAVA高级学习笔记 文章目录 尚学堂JAVA高级学习笔记 写在前面 第1章 手写webserver 1. 灵魂反射 2. 高效解析xml 3. 解析webxml 4. 反射webxml 5. ...

  6. JavaWeb学习笔记(5)-B站尚硅谷

    文章目录 十四.书城项目第三阶段--优化 (1)页面jsp动态化 (2)抽取页面中相同的内容 A.登录成功的菜单 B.base.css.jQuery标签 C.每个页面的页脚 D.manager模块的菜 ...

  7. JDBC学习笔记(1)---B站尚硅谷宋红康

    JDBC学习笔记(1)-B站尚硅谷宋红康 JDBC学习笔记(2)-B站尚硅谷宋红康 文章目录 软件架构方式介绍 JavaWeb技术概览 第1章:JDBC概述 1.1 数据的持久化 1.2 Java中的 ...

  8. b站尚硅谷springmvc学习视频:springmvc文档

    文章目录 一.SpringMVC简介 (b站尚硅谷springmvc学习视频:springmvc文档) 1.什么是MVC 2.什么是SpringMVC 3.SpringMVC的特点 二.HelloWo ...

  9. MySQL高级学习笔记(四)

    文章目录 MySQL高级学习笔记(四) 1. MySql中常用工具 1.1 mysql 1.1.1 连接选项 1.1.2 执行选项 1.2 mysqladmin 1.3 mysqlbinlog 1.4 ...

  10. js/jquery学习笔记

    javascript简介 JavaScript是一种基于对象和事件驱动并具有相对安全性的客户端脚本语言. 不同于服务器端脚本语言,例如PHP与ASP,JavaScript是客户端脚本语言,也就是说Ja ...

最新文章

  1. Java内部类手机专卖店_Java(20)内部类
  2. Linux编译安装中configure、make和make install各自的作用详解
  3. 文字抖动_如何用PS制作故障风文字效果
  4. 全国计算机等级考试题库二级C操作题100套(第95套)
  5. [转载]在ASP.NET MVC中,使用Bundle来打包压缩js和css
  6. 如何使用JMeter发送Post请求
  7. 数据结构(C++版) 栈的链接存储结构及实现
  8. [渝粤教育] 西南科技大学 管理学原理 在线考试复习资料
  9. absolute之后居中宽度自适应
  10. NodeJS:图片验证码登录
  11. maya导入abc动画_带你直观了解三维动画设计
  12. 2、Docker部署的Onlyoffice中文字体修改
  13. Kotlinx.serialization VS Gson
  14. B2B企业越早做网络营销会有哪些优势 由上海添力张进老师讲解
  15. 超过1M的网络动图添加到微信表情包
  16. JS-计算日期差,计算日期之间的月数
  17. 手机软件开发环境种类介绍(转)
  18. java时钟课程设计_JAVA课程设计报告电子钟
  19. yyyy-MM-dd和YYYY-MM-dd的区别
  20. 前后端数据交互——ajax技术

热门文章

  1. 《Web漏洞防护》读书笔记——第2章,SQL注入防护
  2. mybatis在指定库建表_搭建MyBatis开发环境及基本的CURD介绍
  3. mysql 升级 乱码_mysql3升级到mysql5解决乱码心得
  4. win10计算机维护,关掉win10系统自动维护功能的方法【图文教程】
  5. linux7重启network,mmp的 rhel7 network重启一直失败,求原因!!!
  6. java submit execute_ExecutorService中submit和execute的区别
  7. js刷新当前页面的几种方式
  8. 用于查询当前数据库中所有表格的记录条数的脚本
  9. 编译cwm-recovery(含部分修改步骤)[转]
  10. JVM初识之常用参数配置