JS高阶---简介+数据类型
首先看下大概流程
【一】基础
接下来看下数据类型分类和判断
(1)数据类型分类
基本类型/值类型5种
---字符串String、数字Number、布尔值Boolean、未定义undefined、空null 对象类型/引用类型
---Object(任意对象)
Function(一种特别的对象,可以执行)
Array(一种特别的对象,数值下标属性,内部数据是有序的)
(2)判断数据类型
typeof(可以判断undefined、数值、字符串、布尔值)
instanceof(判断对象的具体类型,判断是函数还是数组... ...)
===(仅仅可以判断undefined和null)
1、typeof返回数据类型的字符串表达式,注意"这里返回结果为字符串格式表达的数据类型",且都是小写
2、所以验证undefined数据类型时必须注意,typeof返回的时数据类型的字符串表达式
3、除了使用typeof还可以使用===严格运算符作比较,如下所示
4、使用typeof判断null
此时发现返回的是object,无法使用typeof判断null数据类型,这里需要用到===严格运算符
console.log(y === null);//true
此时发现可以用严格运算符===判断的数据类型包含两个,即undefined和null
原因:这两个数据类型只有一个值
5、接下俩判断复杂数据类型
instanceof实例隶属于--判断实例对象是否隶属于构造函数
6、万物皆对象
正如上面所说,Object是任意对象,Function是一种可以执行的特别的对象,而Array也是一种特别的对象,拥有数值下标,且内部数据是有序的
7、判断函数数据类型还有其他方案,即typeof
8、验证console.log数据类型
//true
(3)小结
1、对象作用:存储数据
2、数据也是特殊对象,有序性
3、类型判断
【二】相关问题
(1)什么是实例?
实例也叫实例对象,是由类型对象即构造函数实例化后得出的对象
(2)undefined和null区别?
、undefined代表定义了未赋值
、null代表定义了,且赋值了,但是值为null
(3)何时给变量赋值为null?
注意:
null为空,属于基本数据类型
但typeof null为object
自相矛盾... ...
但是要从开发角度理解,例如b为对象,但是此时数据还没有过来,所以此时可以赋值为null,表示后期将要赋值为对象
此时b便确定了对象赋值,最后如果再为null,则会释放该数据对象所占用的内存---即释放数据对象所占内存
答案:---初始赋值和结束赋值
(4)如何严格区别变量类型和数据类型?
.
JS高阶---简介+数据类型的更多相关文章
- JS高阶函数的理解(函数作为参数传递)
JS高阶函数的理解 高阶函数是指至少满足下列条件之一的函数. · 函数可以作为参数被传递 · 函数可以作为返回值输出 一个例子,我们想在页面中创建100个div节点,这是一种写法.我们发现并不是所有用 ...
- React.js高阶函数的定义与使用
/* 高阶函数的简单定义与使用 一: 先定义一个普通组件 二: 用function higherOrder(WrappendComponent) { return } 将组件包裹起来,并用export ...
- js高阶函数
我是一个对js还不是很精通的选手: 关于高阶函数详细的解释 一个高阶函数需要满足的条件(任选其一即可) 1:函数可以作为参数被传递 2:函数可以作为返回值输出 吧函数作为参数传递,这代表我们可以抽离一 ...
- js高阶函数应用—函数防抖和节流
高阶函数指的是至少满足下列两个条件之一的函数: 1. 函数可以作为参数被传递:2.函数可以作为返回值输出: javaScript中的函数显然具备高级函数的特征,这使得函数运用更灵活,作为学习js必定会 ...
- js 高阶函数 闭包
摘自 https://www.cnblogs.com/bobodeboke/p/5594647.html 建议结合另外一篇关于闭包的文章一起阅读:http://www.cnblogs.com/bob ...
- 浅谈JS高阶函数
引入 我们都知道函数是被设计为执行特定任务的代码块,会在某代码调用它时被执行,获得返回值或者实现其他功能.函数有函数名和参数,而函数参数是当调用函数接收的真实的值. 今天要说的高阶函数的英文为High ...
- js高阶函数汇总
map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值,函数按照原始数组元素顺序依次处理元素. 注意: map() 不会对空数组进行检测. 注意: map() 不会改变原始数组. ...
- JS高阶函数的使用
1.何为高阶函数呢? JavaScript的函数其实都指向某个变量.既然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数.简单来说,就是对其他 ...
- JS 高阶函数
笔记整理自:廖雪峰老师的JS教程 目录 概述 Array中的高阶函数 map(返回新的Array) reduce(返回新的Array) filter(返回新的Array) sort(返回同一Array ...
随机推荐
- A1050 String Subtraction (20 分)
一.技术总结 这个是使用了一个bool类型的数组来判断该字符是否应该被输出. 然后就是如果在str2中出现那么就判断为false,被消除不被输出. 遍历str1如果字符位true则输出该字符. 还有需 ...
- 一次失败的尝试:arm(aarch64架构)上使用docker运行Gogs
环境 Ubuntu aarch64(好像是arm8的一种) Docker安装指南:https://docs.docker.com/install/linux/docker-ce/ubuntu/ Gog ...
- PLSQL安装过程和SCOTT用户被锁的解决方法
一.PLSQL安装: PLSQL基本就是一键式安装,没有什么需要修改的东西,一路Next就行了. 二.SCOTT用户被锁问题解决 1.问题如下: SCOTT用户默认是被锁的,需要通过system管理员 ...
- jmeter和ab的对比
压测比较常用的工具:ab,webbench,jmeter ab和webbench作为shell模式下轻量级的测试工具,ab比webbench功能更多一些 jmeter作为有GUI界面的更高级测试工具 ...
- UVA 10789 题解
Prime Frequency Given a string containing only alpha-numerals (0-9,A-Z and a-z) you have to count th ...
- 『You Are Given a Tree 整体分治 树形dp』
You Are Given a Tree Description A tree is an undirected graph with exactly one simple path between ...
- Centos7/Ubuntu 初始化硬盘分区、挂载
刚刚在腾讯云买了一台服务器,刚买的服务器的数据盘都是需要自己来分区的,下面就记录一下操作. 通过命令fdisk-l查看硬盘信息 可以看到有两块硬盘/dev/vda和/dev/vdb,启动vda是系统盘 ...
- 黑科技!仅需 3 行代码,就能将 Gitter 集成到个人网站中,实现一个 IM 即时通讯聊天室功能?
欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...
- thinkphp3.2.3使用formdata的多文件上传
使用formdata的多文件上传 废话少说 直接上代码 1 JS部分 //选择文件后的处理 function handleFileSelect() { var exerciseid=$(" ...
- C#中的 ?/?:/?? 三者的区别及用法
在项目的搭建过程中不经意间看到一个关于以上标题三个符号的代码,于是留心记录一下,以备不时之需: 1. 可空类型修饰符(?): 引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空. ...