js对象和Object关系、以及js数据类型杂谈
来源:互联网 发布:node schedule 每秒 编辑:程序博客网 时间:2024/06/16 18:52
今晚上很意外看到一个面试题,js对象和Object的关系,然后梳理了下脑中的知识~~
JavaScript对象和Object关系
W3C上有说JavaScript中所有事物都是对象:数字、字符串、数组、函数等等…我感觉从某种意义上是对的,但也有例外,首先js对象就是一种具有属性和方法的特殊数据类型,而Object是js中原型链的起点,js中的对象都继承了他,有一个方法可以验证就是使用instanceof方法,instanceof的作用是检测一个构造函数的prototype是否在一个对象的原型链上,比如说;
var arr = [ 1, 2 ];arr instanceof Object;//true,检测Object构造函数的prototype是否在arr对象的原型链上
刚才我有说的例外,就是像字符串这种基本数据类型的字面量声明方式,我们都知道字符串有两种声明方式,字面量:
var str1 = '123';
和构造函数方式:
var str2 = new String( '123' );
这样的话str1就不是一个对象,没有属性和方法,str2是一个对象,这样说可能会产生误解,因为我们知道str1也是可以访问属性的:
str1.length;//3
这是怎么回事呢?这里其实是通过String构造函数生成了一个临时的对象:
var _str = new String( str );_str.length;//3,然后再把_str对象给销毁掉
比如说我们这样测试下:
var str = '123';str.a = 1;//这里会利用String构造函数产生一个临时对象str.a;//undefined,这里又是产生的另外一个临时对象,所以属性a为undefined
JavaScript数据类型
JavaScript有六种基本数据类型:string、boolean、number、null、undefined、symbol(es6新添加);
还有一种复杂数据类型:object;
如果有发现错误,请在评论中告诉我~~~
阅读全文
0 0
- js对象和Object关系、以及js数据类型杂谈
- js变量和js数据类型关系
- JS数组”(array)和“对象”(object)
- js Object对象
- js里面object对象
- js对象Object
- js打印Object对象,
- JS中的object对象
- js Object对象
- js 数据类型 Array,Object,RegExp
- JS数据类型以及变量
- js 中数据类型和对象的相关
- Js面向对象和数据类型内存分配
- JS 对象复制Object.assign和Object.create
- js 检测数据类型instanceof/constructor和 Object.prototype.toString.call()
- JS数据类型 变量 对象
- js 原型的问题 Object 和 Function 到底是什么关系?
- js object对象赋值bug和对象复制clone方法
- leetcode 12 ,13 Integer to Roman &&Roman to Integer 罗马与阿拉伯数组转换
- 算法第11周Palindromic Substrings[medium]
- 通过USB升级程序固件
- SecureCRT自动登录
- 初识dubbo~官方demo学习
- js对象和Object关系、以及js数据类型杂谈
- 小白成长日记(12)--(C语言)头插法建立单链表(输入输出)
- js脚本爬取网页数据案例解析
- 一篇文让你秒懂CDN
- ubuntu ssh以及samba服务器搭建
- Cost Function的原理及实现(Python, matlab)
- 阿里云上安装python 3.5
- Gson解析
- CentOS7下安装Python3及Pip3并保留Python2