js中的Object对象

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <script>

           var  obj={
               name:‘zain‘,
               age:26
           };

           Object.defineProperty(obj,"__abc__",{
                value:2,
                configurable:false,          //是否可配置
                enumerable:false,          //是否可枚举,迭代
                writable:false               //是否可以改变值
           });

       Object.defineProperty(obj,"show",{

          configurable:false,          //是否可配置
          enumerable:true,          //是否可枚举,迭代
          writable:true
                       //是否可以改变值
     });
        //    var __a__={};      //这个对象最好别操作,私有受保护的。
        //    var __DEFS__={};   // __代表受保护,全大写代表常量

        //    console.log(obj);

        // Object.keys
        // Object.getOwnPropertyNames
        // Object.getOwnPropertyDescriptor
        // Object.propertyIsEnumerable
        // Object.setPrototypeOf
        // Object.getPrototypeOf
        // Object.hasOwnProperty

//返回该对象可枚举的属性
        var keys=Object.keys(obj);
         console.log(keys);

//返回该对象所有的属性,__proto__除外。
    var names=Object.getOwnPropertyNames(obj);
    console.log(names);

//返回对象的原型
 console.log(Object.getPrototypeOf(obj));

//JavaScript对象既可以有自己的属性,又可以从原型对象继承属性。 hasOwnProperty()方法提供了区分继承属性和非继承的局部属性的方法。
console.log(obj.hasOwnProperty(‘age‘),obj.hasOwnProperty(‘Jack‘),obj.hasOwnProperty(‘toString‘));

//将一个指定的对象的原型设置为另一个对象或者null(既对象的[[Prototype]]内部属性).
//Object.setPrototypeOf(obj, prototype)
console.log(Object.setPrototypeOf(obj,{name:‘zitming‘}));
console.log(obj.name);              //还是zain,这个方法只是设置的原型对象,__proto__上的name为zitming

//返回对象的原型,{name:‘zitming‘}
console.log(Object.getPrototypeOf(obj));

//表示这个对象是否可枚举(迭代)
console.log(obj.propertyIsEnumerable(‘name‘));

//获取指定对象的自身属性描述符。自身属性描述符是指直接在对象上定义(而非从对象的原型继承)的描述符
//Object.getOwnPropertyDescriptor(object, propertyname)
console.log(Object.getOwnPropertyDescriptor(obj,‘name‘));

//  function outer(){
//      inner();
//      console.log(outer.caller);
//  }

//  function inner(){
//      console.log(inner.caller);
//  }

//  (function abc(){
//      outer()
//  })();
    </script>
</body>
</html>

原文地址:https://www.cnblogs.com/zhumeiming/p/9711104.html

时间: 2024-08-01 05:50:14

js中的Object对象的相关文章

js中的数组对象排序

一.普通数组排序 js中用方法sort()为数组排序.sort()方法有一个可选参数,是用来确定元素顺序的函数.如果这个参数被省略,那么数组中的元素将按照ASCII字符顺序进行排序.如: var arr = ["a", "b", "A", "B"]; arr.sort(); console.log(arr);//["A", "B", "a", "b"

Javascript中的Object对象

Object是在javascript中一个被我们经常使用的类型,而且JS中的所有对象都是继承自Object对象的.虽说我们平时只是简单地使用了Object对象来存储数据,并没有使用到太多其他功能,但是Object对象其实包含了很多很有用的属性和方法,尤其是ES5增加的方法,因此,本文将从最基本的介绍开始,详细说明了Object的常用方法和应用. 回到顶部 基础介绍 创建对象 首先我们都知道,对象就是一组相似数据和功能的集合,我们就是用它来模拟我们现实世界中的对象的.那在Javascript中,创

详解Javascript中的Object对象

Object是在javascript中一个被我们经常使用的类型,而且JS中的所有对象都是继承自Object对象的.虽说我们平时只是简单地使用了Object对象来存储数据,并没有使用到太多其他功能,但是Object对象其实包含了很多很有用的属性和方法,尤其是ES5增加的方法,因此,本文将从最基本的介绍开始,详细说明了Object的常用方法和应用. 基础介绍 创建对象 首先我们都知道,对象就是一组相似数据和功能的集合,我们就是用它来模拟我们现实世界中的对象的.那在Javascript中,创建对象的方

在js中 把 json对象转化为String对象的方法

方法1: 使用js的扩展方法 ** * json对象转字符串形式 */ function json2str(o) { var arr = []; var fmt = function(s) { if (typeof s == 'object' && s != null) return json2str(s); return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s; } for (v

js中的json对象详细介绍

JSON一种简单的数据格式,比xml更轻巧,在JavaScript中处理JSON数据不需要任何特殊的API或工具包,下面为大家详细介绍下js中的json对象, 1.JSON(JavaScript Object Notation)一种简单的数据格式,比xml更轻巧.JSON是JavaScript原生格式,这意味着在JavaScript中处理JSON数据不需要任何特殊的API或工具包. JSON的规则很简单:对象是一个无序的“‘名称:值'对”集合.一个对象以“{”(左括号)开始,“}”(右括号)结束

js中两个对象的比较

代码取自于underscore.js 1.8.3的isEqual函数. 做了一些小小的修改,主要是Function的比较修改. 自己也加了一些代码解读. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>js中两个对象的比较</title> <script> /* 需求难点描述: 数组和对象,都

js中的Object

js中的Object 浅克隆 var obj = { a: 1, b: 2, c: 3 } 方式一: var o = Object.assign({}, obj); 方式二: var {...o} = obj; 深克隆 JSON.parse(JSON.stringify(obj)) freeze 浅冻结,属性值不能修改,但是嵌套的引用类型不起作用 Object.freeze(obj); obj.a = 11 // 修改属性无效 seal 密封对象,不能添加和删除属性 Object.seal(ob

java学习中,object 对象的使用(toString、equals、hashCode)(java 学习中的小记录)

java学习中,object 对象的使用(java 学习中的小记录)作者:王可利(Star·星星) object 对象(参考API学习) 重点掌握三个方法: 1.toString 返回该对象的字符串表示. 2.equals(object obj)指示其他某个对象是否与这个对象相等. 3.hashCode() 返回对象的哈希码. 详见代码的注释分析(一个是Person类重写方法,一个是Star类使用方法) Star类代码: 1 package study; 2 3 public class sta

JS中的event 对象详解

JS中的event 对象详解 JS的event对象 Event属性和方法: 1. type:事件的类型,如onlick中的click: 2. srcElement/target:事件源,就是发生事件的元素: 3. button:声明被按下的鼠标键,整数,1代表左键,2代表右键,4代表中键,如果按下多个键,酒把这些值加起来,所以3就代表左右键同时按下:(firefox中 0代表左键,1代表中间键,2代表右键) 4. clientX/clientY:事件发生的时候,鼠标相对于浏览器窗口可视文档区域的