常考JS题笔记
### 1. 原始类型有哪几种?null 是对象吗?
答: Null,undefined,Number,String,Blooean,symbol
1)【理解和使用ES6中的Symbol】【https://www.jianshu.com/p/f40a77bbd74e】
2)null不是对象,但是typeof会把其归为对象
console.log(typeof null) // `000` 开头代表是对象,然而 `null` 表示为全零,所以被误判为对象
console.log(null instanceof Object)
let c = 2;
let d = Number(c)
let e = new Number(c)
console.log(typeof c); //number
console.log(c instanceof Number); //false
console.log(d instanceof Number); //false
console.log(e instanceof Number); //true
明明都是num,而且都是2,只是因为第一个不是对象,是基本类型,所以直接返回false,而new是封装成对象,所以true。
这里要严格注意这个问题,有些说法是检测目标的__proto__与构造函数的prototype相同即返回true,这是不严谨的,检测的一定要是 [对象] 才行
let f = [];
console.log(f instanceof Array); //true
复杂类型是直接生成构造函数的,所以不会像基本类型一样两种情况,这个可以放心用。
[JS的instanceof到底是有多坑?][https://www.imooc.com/article/69870]
### 2. 对象类型和原始类型的不同之处?函数参数是对象会发生什么问题?
答: 原始对象存放的是值;对象类型存放的是指针;
最新文章
- SqlServer表结构查询
- mysql 5.7.14 免安装配置方法教程
- SQL Server数据库镜像的页面自动修复原理
- Redis Sentinel机制与用法(一)
- X.509证书_生成X.509协议的证书
- 现代程序设计——homework-06
- onclick控制元素显示与隐藏时,点击第一次无反应的原因
- Difference Between XML and XAML.
- 在Fedora20上安装Oracle 12c
- MEMS微加工技术
- 实现 node_modules 共享
- [Bayes] Why we prefer Gaussian Distribution
- Alex: 2018年对混合现实MR的展望
- Python科学计算库
- UVA - 558 Wormholes (SPEA算法模板题)
- 第十七单元 Samba服务
- webassembly
- DDT模块
- 完成分析 FastAdmin 用户余额功能(后台篇)
- 【Android】3.14 公交线路查询功能
热门文章
- DeviceEventEmitter React-Native 发送和接受消息(事件监听器)
- IDEA 配置默认pom,logback模板,XML模板
- LeetCode 104. 二叉树的最大深度(Maximum Depth of Binary Tree)
- [转帖]Docker Hub上镜像发现挖矿蠕虫病毒,已导致2000台主机感染
- [转帖]Hive 快速入门(全面)
- Java中的事务及使用
- P5200 [USACO19JAN]Sleepy Cow Sorting
- php数组与数据栈相关函数
- ~ubuntu1804安装禅道
- 从零开始学Flask框架-007