前端 js 经典:Object 常用原生方法

简介: 前端 js 经典:Object 常用原生方法

1. Object 属性描述符

属性描述符分为:数据描述符、存取描述符

let obj = {
  name: "yqcoder",
};
// 单个属性
Object.defineProperty(obj, "name", {
  // 数据描述符
  // 属性值,默认 undefined
  value: "yq",
  // 可写,默认 false,true 时可修改
  writable: true,
  // 可删除,默认 false,true 时可删除
  configurable: true,
  // 可枚举,默认 false,true 时可枚举
  enumerable: true,
 
  // 存取描述符
  // 截获name的值
  get() {
    return this.value;
  },
  // 设置name的值
  set(value) {
    this.value = value;
  },
});
// 多个属性
Object.defineProperties(obj, {
  name: {
    value: "yqcoder",
    writable: true,
    configurable: true,
    enumerable: true,
  },
});
 
// 获取属性描述符
Object.getOwnPropertyDescriptor(obj, "name"); // {value: 'yqcoder', writable: true, enumerable: true, configurable: true}

2. Object.assign

合并两个对象,更改原对象

let obj = {
  name: "yqcoder",
};
let _obj = {
  age: 18,
};
Object.assign({}, obj, _obj); // {name: 'yqcoder', age: 18}

3. Object.create

创建一个新对象

let obj = Object.create(null, {
  name: {
    value: "yqcoder",
    enumerable: true,
  },
  age: {
    value: 18,
    enumerable: true,
  },
});
obj; // {name: 'yqcoder', age: 18}
4. Object.keys

遍历对象,返回由 key 组成的数组

let obj = {
  name: "yqcoder",
  age: 18,
};
Object.keys(obj); // ['name', 'age']

5. obj 对象方法

let obj = {
  name: 'yqcoder',
  age: 18
}
// delete obj.key 删除对象属性
delete obj.name; // {age: 18}
// hasOwnProperty 判断对象是否有属性
obj.hasOwnProperty("age"); // true


目录
相关文章
|
2天前
|
JavaScript 前端开发
js中改变this指向、动态指定函数 this 值的方法
js中改变this指向、动态指定函数 this 值的方法
|
2天前
|
JavaScript 前端开发 开发者
JavaScript 中程序异常处理的方法,提升代码运行的健壮性
JavaScript 中程序异常处理的方法,提升代码运行的健壮性
|
2天前
|
JavaScript
分享经典面试题:JS数组去重的多种方法
分享经典面试题:JS数组去重的多种方法
|
2天前
|
JavaScript
JS判断变量是不是数组?方法大全!
JS判断变量是不是数组?方法大全!
|
7天前
|
JavaScript 前端开发 Java
前端知识点03(JS)
前端知识点概览:了解JS中的this指向,包括全局、函数、new、apply/call/bind及箭头函数的规则。理解script的async和defer属性对脚本加载和执行的影响。探讨setTimeout和setInterval的用法及其在性能上的考量。ES6与ES5的区别在于新语法特性,如let/const、箭头函数、模板字符串、模块化、类和继承等。此外,ES6还引入了Symbol、解构赋值、默认参数、Map/Set和Generator等功能。别忘了点赞和支持作者哦!
17 1
|
7天前
|
JavaScript 前端开发
前端面试02(JS)
本文是前端面试系列的第二篇,主要涵盖了JavaScript的基础知识,包括JS的组成(ECMAScript、DOM、BOM)、内置对象(如String、Array、Math、Date等)、数组操作方法、数据类型检测方法(typeof、instanceof、constructor、Object.prototype.toString.call)、闭包的概念及其特点、前端内存泄漏的原因和类型、事件委托的优势、基本数据类型与引用数据类型的差异、原型链的工作原理以及JS实现继承的多种方式(原型链、构造函数、组合继承等)。文章结尾鼓励读者点赞和支持作者。
9 1
|
8天前
|
JavaScript 前端开发 NoSQL
构建基于Node.js的全栈应用:从前端到后端的完整指南
【5月更文挑战第24天】本文是关于使用Node.js构建全栈应用的指南,涵盖前端(React或Vue)、后端(Node.js + Express)和数据库(MongoDB)的选型与实现。文章介绍了项目结构、前端组件化开发、后端API接口编写、前后端联调及部署上线的注意事项,帮助读者掌握全栈开发流程。
|
10天前
|
移动开发 JavaScript 前端开发
【热门话题】Vue.js:现代前端开发的轻量级框架之旅
Vue.js,由尤雨溪于2014年创建,是一个轻量级的前端框架,因其简洁API、高效渲染和组件系统深受全球开发者喜爱。本文探讨Vue的核心理念、技术架构、开发实践及在现代Web开发中的应用。Vue遵循渐进式框架思想,提供声明式编程、组件化和响应式数据绑定。技术上,它采用双向数据绑定、虚拟DOM和生命周期钩子。开发实践中,Vue CLI和Vuex、Vue Router分别加速开发和管理状态、路由。Vue不仅适用于单页应用,还支持多页应用、移动开发和跨平台项目,拥有丰富的社区生态和插件。随着Vue 3的推出,Vue将持续创新并影响前端开发领域。
32 0
|
14天前
|
移动开发 前端开发 JavaScript
10款精美的web前端源码的特效,2024年最新面试题+笔记+项目实战
10款精美的web前端源码的特效,2024年最新面试题+笔记+项目实战
|
17天前
|
存储 前端开发 JavaScript
前端笔记_OAuth规则机制下实现个人站点接入qq三方登录
前端笔记_OAuth规则机制下实现个人站点接入qq三方登录
45 1