当前位置: 首页 > news >正文

合肥房产网新楼盘价格手机seo网站推广

合肥房产网新楼盘价格,手机seo网站推广,现在的网站用什么程序做,装饰公司资质检测数据类型的4种方法typeofinstanceofconstructor{}.toString.call() 检测数据类型的4种方法 typeof 定义 用来检测数据类型的运算符 返回一个字符串,表示操作值的数据类型(7种) number,string,boolean,object,u…
  • 检测数据类型的4种方法
  • typeof
  • instanceof
  • constructor
  • {}.toString.call()

检测数据类型的4种方法

typeof

定义

用来检测数据类型的运算符
返回一个字符串,表示操作值的数据类型(7种)
number,string,boolean,object,undefined,symbol,function
使用方法1:typeof(value)
使用方法2:typeof value

typeof(null)

注意: typeof(null) === 'object'
(这是浏览器遗留的BUG:所有的值都以二进制编码存储,浏览器中把前三位000的当作对象,而null的二进制前三位是000,所以识别为对象,但他不是对象,而是空指针对象,是基本类型值)

typeof(undefined)

typeof undefined === ‘undefined’
注意:typeof 未声明的变量,返回 'undefined'

typeof a;//'undefined'
typeof typeof a;//'string'

instanceof

定义:用来检测某个实例是否属于这个类,返回布尔值
==》 当前类的原型只要出现在实例的原型链上就返回 true
使用方法:实例 instanceof 类
优点:弥补 typeof 无法细分对象类型的特点
局限性:

  1. 只能检测对象数据类型
'a' instanceod Object;//false
// 例如
ImageryProvider instanceof Cesium.ImageryProvider
  1. 构造函数创建的基本类型可以检测
var a = new String('a')
a instanceof Object
  1. 万物皆对象,数组对象正则都是 Object的实例

constructor

定义:判断当前的实例的 constructor 的属性值,返回函数
==》 利用他的实例的构造函数检测
==》 一般实例.constructor === 类.prototype.constructor
使用方法:实例.constructor === 类
优点:能够检测所有的数据类型,包括自定义类

function Person (){...}
new Person().constructor; //ƒ Person (){}

缺点:JS中的 constructor 是不被保护的,可以重定向

Array.constructor;// f Array () {}
Array.constructor = 1;// 1

{}.toString.call() 推荐

定义:对象原型上的toString方法,能返回当前实例所属类的信息 ==》返回字符串
使用方法:Object.prototype.toString.call(被检测的实例)
优点:基本能基础所有的数据类型

console.log({}.toString.call(1));// '[object Number]'
console.log({}.toString.call('a'));// '[object String]'
console.log({}.toString.call(true));// '[object Boolean]'
console.log({}.toString.call(Symbol.for('a')));// '[object Symbol]'
console.log({}.toString.call(undefined));// '[object Undefined]'
console.log({}.toString.call(null));// '[object Null]'
console.log({}.toString.call({}));// '[object Object]'
console.log({}.toString.call([]));// '[object Array]'
console.log({}.toString.call(/a/g));// '[object RegExp]'

局限性:自定义类都返回 '[object Object]'

function Test(a){this.a = 1}
let test = new Test(1)
console.log({}.toString.call(test))//'[object Object]'
http://www.yayakq.cn/news/97797/

相关文章:

  • 个人备案的网站销售商品网站建设需要有什么特点
  • 潍坊模板建站定制重庆做手机网站建设
  • 一个普通的网站做线上交易好吗最新软件发布平台
  • 网站建设策划书的编制国内wordpress大神
  • 江门cms模板建站WordPress微博客主题
  • 泉州市网站制作企业互联网舆情监测中心
  • 嘉兴哪家公司做网站比较好的比较好的公司网页制作
  • 网站建设开发能力很强的企业网架公司安全员需要什么证书
  • 怎么样用ppt做网站网站 公众号 建设方案
  • 河东区腾讯网站建设网店名字创意
  • 中企动力提供网站建设企业网站注册申请
  • 烟台做网站的企业大连龙采做网站
  • 外贸网站建设推广方案东南亚vps
  • php做网站麻烦吗深圳惠州网站建设公司
  • 沛县建设局网站烟台开发区人才网官网
  • 网站制作软件图标微网站如何做推广
  • 北京鸿讯泰德网站建设网站建设资金的请示
  • 河间申梦网站建设制作京东网站建设吗
  • 广西工商网站查询企业信息宁波优化网站排名软件
  • 康定网站建设企业公众号 开发商城
  • 优就业seo课程学多久百度关键词优化工具是什么
  • 有关电子商务网站建设与维护的书籍辽宁省建设工程信息网官网招标
  • 网站的排名与权重公司给别人做的网站违法的吗
  • 深圳高端网站建设公司排名wordpress文章内图片幻灯片
  • 外销网站怎么做的做网站首页布局设计注意事项
  • 网上做调查赚钱的网站有哪些建设网站要求哪里备案
  • 如何在阿里云上做网站新网站怎么做论坛推广
  • 昆山公司网站制作做网站都需要准备什么
  • 深圳网站设计制作建设青岛的网站设计公司
  • 郑州网站建设 新浪博客专题网站建设的请示