美文网首页JS学习笔记
JS对象(3)- 其他内容

JS对象(3)- 其他内容

作者: zh2443 | 来源:发表于2019-01-04 20:10 被阅读0次

1. call和apply

    call和apply是方法的一种调用方式,定义为:Function.call(obj,arg1,arg2...),Function.call(obj,[arg1,arg2...]);作用是改变调用的函数内部的this指向,使函数内部的this指向obj,通常我们直接调用一个函数时,其内部也是调用的call。示例如下:

2. 对象的枚举

    js中,提供了for...in循环来枚举对象的属性,下面的代码枚举了对象obj的属性,以及打印属性的值:

    上面的代码中,对象obj的原型属性也被枚举了出来,所以for...in循环枚举的属性不仅包括自身属性,还包括原型上的属性,但系统内置的属性是不枚举的。

    我们可以通过对象的hasOwnProperty方法,判断某个属性是否为该对象自身属性,而非继承属性,加如下判断后,sex属性不会被枚举出来:

    另一种操作符in,也可以用来判断某个对象是否有某个属性,但是它的判断会包含原型属性:

3. 对象类型判断

    我们可以通过typeof运算符来判断某个原始值是否为某个类型,但对于对象,它的返回值为‘object’,而我们需要判断该对象是否为某个构造函数的实例,这时可以通过instanceof运算符来判断:

    a instanceof A:判断a对象是否为A构造函数构造出来,并且如果a对象的原型链上有A的原型,那么它的返回结果也是true。

    另一种判断对象类型的方式是,调用Object.prototype.toString方法,判断返回结果,如下数组和对象的返回结果是不同的:

    需要注意的是,该方法对js内置对象和客户端对象的支持比较好,但对自定义对象的返回结果都是"[object Object]"。

相关文章

  • JS对象(3)- 其他内容

    1. call和apply call和apply是方法的一种调用方式,定义为:Function.call(ob...

  • RYF javascript笔记2

    3. 标准库 3.1Object对象 3.1.1概述 js提供一个Object对象,所有其他对象都继承自它。Obj...

  • 复习笔记之内置对象

    内置对象 JavaScript中的对象分为3种:自定义对象、内置对象、浏览器对象前两种对象是JS基础内容,属于EC...

  • 1.4JavaScript 弹出框与内置对象

    消息框 JavaScript内置对象JavaScript对象 :1. js内置对象、js事件对象、3.BOM浏览器...

  • es6 class总结

    内容概述 为什么要有class class声明的特点 为什么要有class js是面向对象编程,可是与其他语言声明...

  • JS属性

    innerHTML在JS是双向功能:获取对象的内容 或 向对象插入内容 offsetWidth 对象的可见宽度...

  • js对象及其方法

    1.对象MDN文档2.JS基础--JS对象及其基本用法3.JavaScript 对象所有API解析

  • js学习日记

    innerHTML innerHTML 在JS中具有双向功能:获取对象的内容 或 向对象插入内容。如: 这是内容 ...

  • 对象、原型(prototype)、指针(__proto__)、构

    一、函数对象 ①创建函数(var a = function (){}) ②js原生对象中除Math,JSON其他对...

  • JavaScript对象和json

    一、对象 在js中,对象是一种数据类型,不同于其他语言中的对象,js对象可以直接写出来,对象的写法包括:{}字面量...

网友评论

    本文标题:JS对象(3)- 其他内容

    本文链接:https://www.haomeiwen.com/subject/vnvkrqtx.html