js基础-引用类型-Object对象 ★★★☆
2017-09-21 08:33
711 查看
Object类型
1. 实例化对象所有其他对象都继承Object。
创建object实例的方式有两种:
第一个种是使用new操作符后跟Object构造函数
var person = new Object()注意:O是大写
第二种是使用对象字面量:
var person = { name: 'tg' };访问对象属性使用的是点表示法,也可以用方括号表示法来访问。
var person = { name: 'tg' };console.log(person.name); // "tg"注意:如果对象属性名是不符合语法的或属性名是关键字或保留字,只能使用方括号表示法。例如:
console.log(person['name']); // "tg"
var person = { "1a" : 1 }; person["1a"]; // 1 person.1a // 会报错2、给对象添加方法
我们可以像添加属性一样给对象添加方法:
var o = {}; o.test = function(){ console.log(1); }o.test(); //1
3、Object对象的静态方法
3.1 Object.keys()、Object.getOwnPropertyNames()
Object.keys()方法和
Object.getOwnPropertyNames()方法一般用来遍历对象的属性,它们的参数都是一个对象,返回一个数组,该数组的项都是对象自身的(不是继续原型的)的所有属性名。两者的区别在于,
Object.keys()只返回可枚举的属性,
Object.getOwnPropertyNames()方法还返回不可枚举的属性名。
var arr = ['a', 'b']; console.log(Object.keys(arr)); // ["0", "1"] console.log(Object.getOwnPropertyNames(arr)); // ["0", "1", "length"]数组的length属性是不可枚举的。
4、Object对象的实例方法
valueOf():返回当前对象对应的值,默认情况下返回对象本身。 toString():返回当前对象对应的字符串形式。 toLocaleString():返回当前对象对应的本地字符串形式。 hasOwnProperty():判断某个属性是否为当前对象自身的属性,还是继承自原型对象的属性。 如果是自身的属性,返回true,否则返回false。 isPrototypeOf():判断当前对象是否为另一个对象的原型。如果是,返回true,否则返回false。 propertyIsEnumerable():判断某个属性是否可枚举。(1)valueOf()
valueOf()方法返回当前对象对应的值,默认情况下返回对象本身。
var o = { name: 'tg', age: 24 }; console.log(o == o.valueOf()); // true(2)toString()
toString()返回当前对象对应的字符串形式。
var o = { name: 'tg', age: 24 }; console.log(o.toString()); // "[object Object]"(3)hasOwnProperty()
hasOwnProperty()判断某个属性是否为当前对象自身的属性,还是继承自原型对象的属性。 如果是自身的属性,返回true,否则返回false。
var o = { name: 'tg', age: 24 }; console.log(o.hasOwnProperty('name')); // true console.log(o.hasOwnProperty('toString')); // falsetoString()方法是继承原型的,所以返回后false。
(4)isPrototypeOf()
isPrototypeOf()方法判断当前对象是否为另一个对象的原型。如果是,返回true,否则返回false。
function Test(){}var t = new Test();
console.log(Test.prototype.isPrototypeOf(t)); // true
相关文章推荐
- JavaScript之面向对象学习五(JS原生引用类型Array、Object、String等等)的原型对象介绍
- js基础-引用类型-Date对象 ★☆
- js中判断Object、Array、Function等引用类型对象是否相等的方法
- js中判断Object、Array、Function等引用类型对象是否相等
- js基础-引用类型-console对象 ★☆
- js中判断Object、Array、Function等引用类型对象是否相等
- JS基础知识(基本类型 引用类型)
- js对象引用、基本类型、引用类型
- 测试JS基本类型以及对象的引用
- JS基础知识(基本类型 引用类型)
- js 基本类型 引用类型 简单赋值 对象引用 底层原理分析
- 一道js题(引用类型、基本类型、包装对象、函数赋值)
- JavaScript基础——引用类型(一)Object类型、Array类型
- JavaScript基础篇(3)之Object、Function等引用类型
- 对js中的引用类型的理解(2)——Object类型
- js的基础(平民理解的执行上下文/调用堆栈/内存栈/值类型/引用类型)
- JavaScript中的引用类型(JS对象)(一)
- js对象和Object关系、以及js数据类型杂谈
- Python--前端基础之JavaScript(JS的引入方式,JS的变量、常量和标识符,JS的数据类型,运算符,流程控制,JavaScript的对象)
- ECMAScript 引用类型--Object 对象