JavaScript学习——内置属性
在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学习——内置属性的更多相关文章
- javascript内置属性——arguments
arguments是javascript中的内置属性,可以直接调用函数的参数,作用类似Array,但本身并不是数组.这次发现它是为了实现封装函数,将不确定数量的数字乘积.比如function mult ...
- javaScript数组的三种属性—数组索引、数组内置属性、数组自定义属性
JS数组也是一种对象. 我们用JavaScript处理的所有东西,都可以视为是一种对象. JavaScript中有两种数据类型,基本类型数对象类型,但是基本类型基本都是包括在对象类型之中的. 数组.函 ...
- JavaScript 标准内置对象Promise使用学习总结
Javascript标准内置对象Promise使用学习总结 by:授客 QQ:1033553122 1. 基础用法 var condition = true; let p = new Prom ...
- 第一百零八节,JavaScript,内置对象,Global对象字符串编码解码,Math对象数学公式
JavaScript,内置对象,Global对象字符串编码解码,Math对象数学公式 学习要点: 1.Global对象 2.Math对象 ECMA-262对内置对象的定义是:"由ECMASc ...
- Ant 脚本打印系统属性变量、ant内置属性
Ant 脚本打印系统属性变量.ant内置属性 作用 编写ant脚本的时候,经常会引用到系统属性,本脚本用于打印系统常用属性(System.getProperties)与环境变量(Environment ...
- 一、JavaScript概述 二、JavaScript的语法 三、JavaScript的内置对象
一.JavaScript的概述###<1>JavaScript的概念 又称ECMAScript,和java没有任何关系 嵌入在HTML元素中的 被浏览器解释运行的 一种脚本语言. ###& ...
- JavaScript 标准内置对象
JavaScript 标准内置对象或称全局的对象(global objects)不要和 全局对象(global object)混淆.这里说的全局的对象是说在全局作用域里的对象,全局作用域包含了全局对象 ...
- Thymeleaf的内置属性(转)
原文链接: http://somefuture.iteye.com/blog/2253761 Thymeleaf是另一个Java视图模板引擎,使用上和FreeMarker各有千秋,不了解的可以从其他博 ...
- 对象的内置属性和js的对象之父Object()
js中对象有constructor,valueOf(),toString()等内置属性和方法; 创建一个空对象的方法: var o = {}; 或者 var o= new Object(); o.co ...
随机推荐
- volley(2) 参数code : or_barcode, pr_ismsd:false , method:GET
1. 来自于WHCombineBatchFragment.java /** * 当编辑框里面的内容完成的时候,自动的,同时获取服务器的批量数 */private void barcodeEnterEv ...
- 通知(NSNotification)
通知 一个完整的通知一般包含3个属性: - (NSString *)name; // 通知的名称 - (id)object; // 通知发布者(是谁要发布通知) - (NSDictionary *)u ...
- iOS基础CGAffineTransform的简单使用
CoreGraphics框架中的CGAffineTransform类可用于设定UIView的transform属性,控制视图的缩放.旋转和平移操作: 另称放射变换矩阵,可参照线性代数的矩阵实现方式0. ...
- BOM浏览器对象
BOM 浏览器对象 一.浏览器本身就自己有一些对象,不用创建就可以使用 window(当前浏览器窗体) 属性: status opener closed parent top 方法: alert(); ...
- NBUT 1121 Sakuya's Fly Knife 飞刀(暴力)
题意:给出一个带有n*m个格子的矩阵,部分格子中有靶子target,现在要从一个没有靶子的格子中射出飞刀数把,飞刀是可穿透靶子的,同一直线上都可以一刀全射掉.现在问在哪个格子射出飞刀,可以在全部射中的 ...
- linux下系统启动时,几个配置文件 /etc/profile、~/.bash_profile 等几个文件的执行过程,先后顺序
1. 在登录Linux时要执行文件的过程如下: 在刚登录Linux时, 首先启动 /etc/profile 文件, 然后再启动用户目录下的 ~/.bash_profile. ~/.bash_login ...
- 07day1
怒跪了. 砍树 排序 [问题描述] 小 A 在一条水平的马路上种了 n 棵树,过了几年树都长得很高大了,每棵树都可以看作是一条长度为 a[i]的竖线段.由于有的树过于高大,挡住了其他的树,使得另一 ...
- [转] gc tips(3)
原文地址:http://kevincao.com/2011/08/actionscript-garbage-collection-2/ 谈谈ActionScript垃圾回收(下) 前文我们介绍了GC的 ...
- 剑指offer—第三章高质量的代码(按顺序打印从1到n位十进制数)
题目:输入一个数字n,按照顺序打印出1到最大n位十进制数,比如输入3,则打印出1,2,3直到最大的3位数999为止. 本题陷阱:没有考虑到大数的问题. 本题解题思路:将要打印的数字,看成字符串,不足位 ...
- hdu 5444 Elven Postman(根据先序遍历和中序遍历求后序遍历)2015 ACM/ICPC Asia Regional Changchun Online
很坑的一道题,读了半天才读懂题,手忙脚乱的写完(套上模板+修改模板),然后RE到死…… 题意: 题面上告诉了我们这是一棵二叉树,然后告诉了我们它的先序遍历,然后,没了……没了! 反复读题,终于在偶然间 ...