在js中,几乎所有的对象都是同源对象,都继承Object对象。对象的内置属性指的是它们作为Object实例所具有的属性,这些属性通常反映对象本身的基本信息和数据无关。因此我们称它们为元属性。这些属性通常都是不可枚举的,因此无法用反射机制查看它们。

1.constructor

  实例的constructor的值总是对构造函数即对象类本身的引用。它从概念上而言就是对象实例所属的对象类,在具有继承关系的对象中,它总是指向当前类本身,因此常用它来进行准确的运行时类型识别。

例如:

function a(x,y){
this.x=x;
this.y=y;
}
function b(x,y){
this.x=x;
this.y=y;
}
alert(a.constructor==b.constructor);

2.hasOwnProperty()

这是一个对象方法,用来检查对象是否有局部定义(非继承的)具有特定名字的属性。

function a(){
this.x=1;
};
function b(){
this.y=2;
}
//生成a b两个对象
b.prototype=new a(); //把a对象放入b对象的属性中
//生成一个实例对象
var objB=new b();
//x,y都在b对象中
alert("x" in objB);
alert("y" in objB);
//但是b对象只拥有自己的属性y而没有属性的属性x
alert(objB.hasOwnProperty("x"));
alert(objB.hasOwnProperty("y"));

3.isPrototypeOf();

这个方法用来检查对象是否是指定对象的原型

4.propertyIsEnuerable();

这个方法用来检查对象是否拥有指定属性且这个属性可被for/in循环枚举。只有当前对象拥有某个属性并且该属性可被枚举时,该方法的返回值才是true。属性是否可枚举是有js内部机制决定的。一般情况下,用用户自己定义的对象属性都是可枚举的。

5.toLocaleString()

返回对象本地的化地字符串表示,该方法的默认实现只调用toString()但是子类可以覆盖它,提供本地话。

= =就是说toLocaleString()是toString()的子类?

6.toString()

 返回对象的字符串表示.Object提供的该方法的实现相当简单,并且没有提供更多的游泳的信息。Object的字类通过定义自己的toString()方法覆盖这一方法(就是复写呗)

7.valueOf()

  返回对象的原始值(如果存在)对于类型为Object的对象,该方法只返回自身。Object的字类覆盖了该方法。返回的是与对象相关的原始值。

JavaScript学习——内置属性的更多相关文章

  1. javascript内置属性——arguments

    arguments是javascript中的内置属性,可以直接调用函数的参数,作用类似Array,但本身并不是数组.这次发现它是为了实现封装函数,将不确定数量的数字乘积.比如function mult ...

  2. javaScript数组的三种属性—数组索引、数组内置属性、数组自定义属性

    JS数组也是一种对象. 我们用JavaScript处理的所有东西,都可以视为是一种对象. JavaScript中有两种数据类型,基本类型数对象类型,但是基本类型基本都是包括在对象类型之中的. 数组.函 ...

  3. JavaScript 标准内置对象Promise使用学习总结

    Javascript标准内置对象Promise使用学习总结   by:授客 QQ:1033553122 1.   基础用法 var condition = true; let p = new Prom ...

  4. 第一百零八节,JavaScript,内置对象,Global对象字符串编码解码,Math对象数学公式

    JavaScript,内置对象,Global对象字符串编码解码,Math对象数学公式 学习要点: 1.Global对象 2.Math对象 ECMA-262对内置对象的定义是:"由ECMASc ...

  5. Ant 脚本打印系统属性变量、ant内置属性

    Ant 脚本打印系统属性变量.ant内置属性 作用 编写ant脚本的时候,经常会引用到系统属性,本脚本用于打印系统常用属性(System.getProperties)与环境变量(Environment ...

  6. 一、JavaScript概述 二、JavaScript的语法 三、JavaScript的内置对象

    一.JavaScript的概述###<1>JavaScript的概念 又称ECMAScript,和java没有任何关系 嵌入在HTML元素中的 被浏览器解释运行的 一种脚本语言. ###& ...

  7. JavaScript 标准内置对象

    JavaScript 标准内置对象或称全局的对象(global objects)不要和 全局对象(global object)混淆.这里说的全局的对象是说在全局作用域里的对象,全局作用域包含了全局对象 ...

  8. Thymeleaf的内置属性(转)

    原文链接: http://somefuture.iteye.com/blog/2253761 Thymeleaf是另一个Java视图模板引擎,使用上和FreeMarker各有千秋,不了解的可以从其他博 ...

  9. 对象的内置属性和js的对象之父Object()

    js中对象有constructor,valueOf(),toString()等内置属性和方法; 创建一个空对象的方法: var o = {}; 或者 var o= new Object(); o.co ...

随机推荐

  1. UVa 674 Coin Change【记忆化搜索】

    题意:给出1,5,10,25,50五种硬币,再给出n,问有多少种不同的方案能够凑齐n 自己写的时候写出来方案数老是更少(用的一维的) 后来搜题解发现,要用二维的来写 http://blog.csdn. ...

  2. POJ 1948 Triangular Pastures【二维01背包】

    题意:给出n条边,用这n条边构成一个三角形,求三角形的最大面积. 先求面积,用海伦公式,s=sqrt(p*(p-a)*(p-b)*(p-c)),其中a,b,c分别为三角形的三条边,p为三角形的半周长, ...

  3. mac 安装使用 webp 来压缩图片

    学习性网站: https://developers.google.com/speed/webp/docs/cwebp http://www.w3ctech.com//topic/1672 https: ...

  4. PHP学习笔记04——数组

    <?php // 1.数组的声明,可以直接为数组元素赋值,也可以使用array函数声明数组 /* 索引数组:下标从0开始,依次递增 * 关联数组:字符串为下标 * */ //直接赋值声明数组,不 ...

  5. BZOJ 1103 大都市

    dfs序+BIT. #include<iostream> #include<cstdio> #include<cstring> #include<algori ...

  6. codevs 4927 线段树练习5

    赶在期末考试之前把这道傻逼题调了出来. #include<iostream> #include<cstdio> #include<cstring> #include ...

  7. jupyterhub

    pkill jupyterhub #激活python环境 pyenv activate jupyterhub #启动jupyterhub /fly/start_jupyterhub.sh cd ~/r ...

  8. python numpy array 的一些问题

    1 将list转换成array 如果list的嵌套数组是不规整的,如 a = [[1,2], [3,4,5]] 则a = numpy.array(a)之后 a的type是ndarray,但是a中得元素 ...

  9. 【解题报告】[动态规划] RQNOJ - PID38 / 串的记数

    原题地址:http://www.rqnoj.cn/problem/38 解题思路: 状态表示:dp[i][j][k]表示i个A,j个B,k个C组成的满足条件的字符串的个数 初始状态:dp[0][0][ ...

  10. android中的所谓观察者模式

    生活中我们常认定某些人很有才,但什么是有才呢?明朝的王守仁曾这样解释:才,是所谓天理,应用到物上,便成了才.凡事凡物,只要掌握了所谓科学的方法,并能灵活运用,那么你也可以成为一个有才的人. 观察者模式 ...