前端提高篇(二十四)JS进阶18对象属性的高级用法

x:1,

y:2,

}

Object.defineProperty(obj1, ‘z’,{

value:3,

writable:true,

enumerable:true,

configurable:true,

})

for (var i in obj1){

console.log(i + ’ : ’ + obj1[i]);

}

运行效果:

在这里插入图片描述

不可枚举时:

var obj1 = {

x:1,

y:2,

}

Object.defineProperty(obj1, ‘z’,{

value:3,

writable:true,

enumerable:false,

configurable:true,

})

for (var i in obj1){

console.log(i + ’ : ’ + obj1[i]);

}

运行效果:

在这里插入图片描述

可配置

不可配置之不能删除属性:delete返回false

var obj1 = {

x:1,

y:2,

}

Object.defineProperty(obj1, ‘z’,{

value:3,

writable:true,

enumerable:false,

configurable:false,

})

运行效果:

在这里插入图片描述

不可配置之不能修改配置:

Object.defineProperty(obj1, ‘z’,{

value:3,

writable:false,

enumerable:false,

configurable:false,

})//初始特性设置

Object.defineProperty(obj1, ‘z’,{

writable:true,

enumerable:false,

configurable:true,

})//想要修改配置

运行结果:报错,原因,初始设置时,设置configurable:false,

在这里插入图片描述

多属性:

Object.defineProperties(obj1,{

z: {

value: 3,

writable:false,

enumerable:true,

configurable:true,

},

t : {

value: 4,

writable: true,

enumerable:true,

configurable:true,

}

})

查看属性的特性:Object.getOwnPropertyDescriptor(对象, 属性名)

在这里插入图片描述

set与get

//某班级男生10人,女生8人,算班费

var classFare = {boy:10, girl:8, allmoney:0};

Object.defineProperty(classFare, ‘onemoney’,{

set:function(money){

this.allmoney = (this.boy + this.girl )* money ;

},

get:function(){

return ‘总共:’+this.allmoney;

},

// writable:true,//Cannot both specify accessors and a value or writable attribute

enumerable:true,

configurable:true,

})

运行结果:

在这里插入图片描述

注意:不能在set和get中使用本属性,会造成死循环

最后

我可以将最近整理的前端面试题分享出来,其中包含HTML、CSS、JavaScript、服务端与网络、Vue、浏览器、数据结构与算法等等,还在持续整理更新中,希望大家都能找到心仪的工作。

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

篇幅有限,仅展示部分截图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/829252.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

windows Jenkins运行python+selenium打开浏览器一直无响应,运行中,还没有打开浏览器

一开始解决办法是把打开服务把Jenkins给禁用了 但是没有用,然后找到安装目录 C:\Program Files\Jenkins 在这个路径下,在地址栏输入cmd打开命令窗口运行Jenkins启动命令 java -jar jenkins.war --httpPort8080 打开浏览器进入链接 http://localhost:…

使用工具速记

文章目录 一、sqlyoy登录账号信息迁移二、idea导入之前的已配置的idea信息三、设置windows UI大小四、其他 提示:以下是本篇文章正文内容,下面案例可供参考 一、sqlyoy登录账号信息迁移 工具(sqlyog上面菜单栏)->导入导出详情->选择要导出的账号…

Centos/linux根目录扩容、分区、挂载。LVM、物理卷、逻辑卷

前言    (空格) :分区挂载和扩容是两码事 每个Linux使用者在安装Linux时都会遇到这样的困境:在为系统分区时,如何精确评估和分配各个硬盘分区的容量,因为系统管理员不但要考虑到当前某个分区需要的容量&a…

你的网站还在使用HTTP? 免费升级至HTTPS吧

如果您的网站还在使用老的http协议,可以申请一个免费的SSL证书升级至https! 具体步骤如下: 1 申请免费SSL证书 根据你的需求选择合适的SSL证书类型,如单域名证书,多域名证书、通配符证书 登录免费供应商JoySSL官网&…

施耐德 Unity Pro 编程软件导入导出变量

适用范围 施耐德中高端PLC,使用的编程软件为 UnityPro (最新版更名为 Ecostructure Control Expert) 中端 PLC:Premium,M340高端 PLC:Quantum,M580 导出/导入变量 导出变量可导出【变量和 FB…

表情识别 | LBP+SVM实现脸部动态特征的人脸表情识别程序(Matlab)

表情识别 | LBPSVM实现脸部动态特征的人脸表情识别程序(Matlab) 目录 表情识别 | LBPSVM实现脸部动态特征的人脸表情识别程序(Matlab)预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1 运行环境 程序运行在Windows系统下&am…

微信小程序:11.本地生活小程序制作

开发工具: 微信开发者工具apifox进行创先Mock 项目初始化 新建小程序项目输入ID选择不使用云开发,js传统模版在project.private.config中setting配置项中配置checkinalidKey:false 梳理项目结构 因为该项目有三个tabbar所以我们要创建三…

百种提权及手段一览系列第10集

特权升级的危险是显而易见的。通过提升权限,攻击者可以绕过网络安全措施,从而损害数据完整性、机密性和系统可用性。对于组织而言,这可能会导致数据泄露、系统停机以及潜在的法律和声誉后果。识别权限升级的迹象并部署预防性网络安全措施对于…

【01-机器学习入门:理解Scikit-learn与Python的关系】

文章目录 前言Python与机器学习Scikit-learn简介Scikit-learn与Python的关系使用Scikit-learn进行机器学习结语 前言 在当今的数据科学和人工智能领域,机器学习已经成为了一个不可或缺的组成部分。而对于那些刚刚踏入这一领域的新手来说,理解机器学习的基…

HTTP网络协议的请求方法,具体详解(2024-04-26)

1、HTTP 即超文本传输协议,是一种实现客户端和服务器之间通信的响应协议,它是用作客户端和服务器之间的请求 根据 HTTP 标准,HTTP 请求可以使用多种请求方法。 2、方法分类 HTTP1.0 定义了三种请求方法: GET, POST 和 HEAD 方…

STM32系统参数和结构

系列文章目录 STM32单片机系列专栏 C语言术语和结构总结专栏 文章目录 1. 基本参数 2. 片上资源(外设) 3. STM32系列命名规则 4. 系统结构 5. 引脚定义 6. 启动配置 7. 最小系统电路 8. 型号分类和缩写 1. 基本参数 STM32F103C8T6 系列&#…

SpringBoot+MyBatis-Plus+jsqlparser实现多租户功能

前言 多租户技术(multi-tenancy technology)是一种软件架构技术,它允许在单个系统实例上为多个用户或组织提供服务,同时确保这些用户之间数据的隔离性。在多租户架构中,每个租户(可以是个人用户、企业、组…

预见预判|AIRIOT智慧交通管理解决方案

随着机动车保有量的逐步增加,城市交通压力日益增大。同时,新能源车辆的快速发展虽然带来了环保效益,但也因不限号政策而进一步加剧了道路拥堵问题。此外,各类赛事和重大活动的交通管制措施也时常导致交通状况复杂多变。面对这些挑…

便携式应急指挥箱规格参数

概况: 微缩型的无线视频音频传输的机动挥所。体积小、重量轻、公配电方便、携带便携、功能齐全。可进行单兵作战,通过此无线音频视频传输的指挥箱能完成现场图像、语音、数据的采集等功能,可以通过5G/4G/WIFI等多种无线网络完成传输的需求,或…

Linux基础——Linux开发工具(gcc/g++,gdb)

前言:在上一篇我们简单介绍了yum,vim的一些常用的指令和模式,现在让我们来进一步了解其他的Linux环境基础开发工具gcc/g,gdb。 如果对前面yum和vim有什么不懂的建议回顾去回顾上期知识!!! Linu…

html表格导出为word文档,导出的部分表格内无法填写文字

导出技术实现:fileSaver.jshtml-docx-js 1.npm安装 npm install --save html-docx-js npm install --save file-saver 2.页面引入 import htmlDocx from html-docx-js/dist/html-docx; import saveAs from file-saver;components: {htmlDocx,saverFile, }, 3.页…

神经网络的激活函数

目录 神经网络 激活函数 sigmoid 激活函数 tanh 激活函数 backward方法 relu 激活函数 softmax 激活函数 神经网络 人工神经网络( Artificial Neural Network, 简写为ANN)也简称为神经网络(NN)&#xff0c…

Netty 应用与原理

更好的阅读体验 \huge{\color{red}{更好的阅读体验}} 更好的阅读体验 Java IO 模型 本篇示例代码仓库:learn-netty 基础概念 在 I/O 操作中有这么两组概念,其中同步/异步 要和线程中的同步线程/异步线程要区分开,这里指的是同步IO / 异步IO…

ssm智能停车场管理系统

视频演示效果: SSMvue智能停车场 摘 要 本论文主要论述了如何使用JAVA语言开发一个智能停车场管理系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述智能停车…

新兴游戏引擎Godot vs. 主流游戏引擎Unity和虚幻引擎,以及版本控制工具Perforce Helix Core如何与其高效集成

游戏行业出现一个新生事物——Godot,一个免费且开源的2D和3D游戏引擎。曾经由Unity和虚幻引擎(Unreal Engine)等巨头主导的领域如今迎来了竞争对手。随着最近“独特”定价模式的变化,越来越多的独立开发者和小型开发团队倾向于选择…