js对象的详细介绍
a. js对象都是关联数组
b. inherit();返回一个继承自原型对象p的属性的新对象
对象的方法:
创建(create) 设置(set) 查找(query) 删除(delete) 检测(test)和枚举(enumerate)
创建对象的方法:
对象直接量 关键字new es5中的Object.create()
var aa=Object.create({"x":0,"y":1})
属性的读取和修改:
1.通过 . 连接 属性不可以改变,不能在运行时更改
2.通过object['xxx']; 属性可以是变量,比如 object['xx'+a]; a可以是个变量,这样属性就不确定了,可以在运行中更改
3.查询一个没有的属性会返回undefined
4.查询一个对象的属性,如果对象不存在,就会抛出一个错误。如果查询某对象的属性,不让他报错可以这样:
var a=b&&b.c&&b.c.d;
属性的删除
1. delete只能断开宿主与宿主对象的联系,而不会去操作属性中的属性,不能删除通过变量声明或函数声明创建的全局全局对象属性,成功返回true,失败返回false
delete a.b//a不再拥有属性b
delete a['b']//a不再拥有属性b
属性的检测
1.in运算符,hasOwnProperty(),propertyIsEnumerable()
in左侧属性名,有侧是对象如果对象的自有属性或继承属性包含这个属性就返回true,否则false
var a={x:1} a.hasOwnPreperty('x');//true
propertyIsEnumerable()是hasOwnPreperty()的增强版,只有属性是可枚举的,并且属于这个对象,才返回true
2.最简单的方法!==是否为undefined
属性的枚举
1.在代码中给对象添加的所有属性都是可枚举的,在for/in中我们需要跳过一些属性
for(p in o){
if(!o.hasOwnproperty(p)) continue ;//跳过继承属性
}
for(p in o){
if(typeof o[p]==="function") continue ;//跳过方法
}
2.在es5中多了两个函数
Object.keys();//返回一个数组,这个数组由对象中可枚举的自有属性组成
Object.getOwnPropertyNames();//返回对象中所有自有属性的名称
属性getter和setter (存取器属性)
1.var 0={
a:1,//普通的数据属性
//存取器属性都是成对定义的函数
get b(){这里是函数体},
set c(){这里是函数体}
}
对象的三个属性
1.原型属性:
var p={x:1};//定义一个原型对象
var o=Object.create(p);使用这个原型创建一个对象
p.isPrototypeOf(0);//true,o继承自p
Object.prototype.isPrototypeOf(o);//p继承自Object.prototype
2.类属性
3.可扩展性 通过把对象传入Object.esExtensible()判断对象是否是可扩展的
Object.prevenExtensions()将带转换的对象作为参数传进去,就会变成不可扩展的,注意,转换成就不能转换回来了
Object.seal()不仅能够把对象设为不可扩展,而且能把其自身的的所有自有属性设为不可配置
isSealed()检测对象是否封闭
Object.freeze() 冻结,不光不可配置,而且止咳可读
Object.isFrozen() 检查对象是否冻结
对象序列化
1:JSON.stringify();//转换为JSON字符串
2::JSON.parse();//转换为对象
对象方法:
1.toString();
2.toLocaleString();
3.toJSON();
4:valueOf();
以上是js对象的详细介绍的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

WebSocket与JavaScript:实现实时监控系统的关键技术引言:随着互联网技术的快速发展,实时监控系统在各个领域中得到了广泛的应用。而实现实时监控的关键技术之一就是WebSocket与JavaScript的结合使用。本文将介绍WebSocket与JavaScript在实时监控系统中的应用,并给出代码示例,详细解释其实现原理。一、WebSocket技

JavaScript和WebSocket:打造高效的实时天气预报系统引言:如今,天气预报的准确性对于日常生活以及决策制定具有重要意义。随着技术的发展,我们可以通过实时获取天气数据来提供更准确可靠的天气预报。在本文中,我们将学习如何使用JavaScript和WebSocket技术,来构建一个高效的实时天气预报系统。本文将通过具体的代码示例来展示实现的过程。We

JavaScript教程:如何获取HTTP状态码,需要具体代码示例前言:在Web开发中,经常会涉及到与服务器进行数据交互的场景。在与服务器进行通信时,我们经常需要获取返回的HTTP状态码来判断操作是否成功,根据不同的状态码来进行相应的处理。本篇文章将教你如何使用JavaScript获取HTTP状态码,并提供一些实用的代码示例。使用XMLHttpRequest

将MySQL查询结果数组转换为对象的方法如下:创建一个空对象数组。循环结果数组并为每一行创建一个新的对象。使用foreach循环将每一行的键值对赋给新对象的相应属性。将新对象添加到对象数组中。关闭数据库连接。

PHP函数可以通过使用return语句后跟对象实例来返回对象,从而将数据封装到自定义结构中。语法:functionget_object():object{}。这允许创建具有自定义属性和方法的对象,并以对象的形式处理数据。

JavaScript中的HTTP状态码获取方法简介:在进行前端开发中,我们常常需要处理与后端接口的交互,而HTTP状态码就是其中非常重要的一部分。了解和获取HTTP状态码有助于我们更好地处理接口返回的数据。本文将介绍使用JavaScript获取HTTP状态码的方法,并提供具体代码示例。一、什么是HTTP状态码HTTP状态码是指当浏览器向服务器发起请求时,服务

在C++中,函数返回对象需要注意三点:对象的生命周期由调用者负责管理,以防止内存泄漏。避免悬垂指针,通过动态分配内存或返回对象本身来确保对象在函数返回后仍然有效。编译器可能会优化返回对象的副本生成,以提高性能,但如果对象是值语义传递的,则无需副本生成。

Java堆和栈的区别及应用场景解析,需要具体代码示例在Java程序中,堆和栈是两个常用的数据结构,它们在内存中承担不同的角色和功能。了解堆和栈的区别对于编写高效的Java程序至关重要。首先,我们来看一下Java堆。堆是一个用来存储对象的区域,所有在程序中被创建的对象都被存储在堆中。堆是在程序运行时动态分配和释放内存的地方,它不受任何限制,并且可以根据需要自动
