ES6 对象的面试题

ES6 对象面试题

  1. 问题描述: 什么是对象解构赋值?给出一个使用对象解构赋值的示例。

    答案: 对象解构赋值是一种从对象中提取属性并赋值给变量的语法。它允许我们以更简洁的方式从对象中获取特定属性的值。

    以下是一个使用对象解构赋值的示例:

    javascript 复制代码
    const person = { name: 'Alice', age: 30, country: 'USA' };
    const { name, age } = person;
    console.log(name, age); // 输出 'Alice' 30
  2. 问题描述: 什么是对象的展开语法(Spread Syntax)?给出一个使用对象展开语法的示例。

    答案: 对象的展开语法允许我们将一个对象的属性复制到另一个对象中。它可以用于创建新的对象或合并多个对象的属性。

    以下是一个使用对象展开语法的示例:

    javascript 复制代码
    const person = { name: 'Alice', age: 30 };
    const address = { city: 'New York', country: 'USA' };
    
    const mergedObject = { ...person, ...address };
    console.log(mergedObject);
    // 输出: { name: 'Alice', age: 30, city: 'New York', country: 'USA' }
  3. 问题描述: 什么是对象的方法简写?给出一个使用方法简写的示例。

    答案: 对象的方法简写是一种在对象字面量中定义方法的简洁语法。在 ES6 中,可以省略函数关键字 function 和冒号 :,只需提供方法的名称和函数体即可。

    以下是一个使用方法简写的示例:

    javascript 复制代码
    const person = {
      name: 'Alice',
      age: 30,
      sayHello() {
        console.log(`Hello, my name is ${this.name}`);
      }
    };
    
    person.sayHello(); // 输出 'Hello, my name is Alice'
  4. 问题描述: 什么是计算属性名(Computed Property Names)?给出一个使用计算属性名的示例。

    答案: 计算属性名是一种允许在对象字面量中使用表达式作为属性名的语法。通过使用方括号 [] 和表达式,可以根据运行时的值来计算属性名。

    以下是一个使用计算属性名的示例:

    javascript 复制代码
    const propName = 'age';
    
    const person = {
      name: 'Alice',
      [propName]: 30
    };
    
    console.log(person.age); // 输出 30
  5. 问题描述: 什么是对象的解构赋值默认值?给出一个使用解构赋值默认值的示例。

    答案: 对象的解构赋值默认值允许在解构赋值过程中为未定义或值为 undefined 的属性设置默认值。如果属性的值为 null 或已定义,则不会使用默认值。

    以下是一个使用解构赋值默认值的示例:

    javascript 复制代码
    const person = { name: 'Alice', age: undefined };
    const { name, age = 30 } = person;
    
    console.log(name, age); // 输出 'Alice' 30
相关推荐
苏打水com6 分钟前
第十八篇:Day52-54 前端跨端开发进阶——从“多端适配”到“跨端统一”(对标职场“全栈化”需求)
前端
Bigger22 分钟前
后端拒写接口?前端硬核自救:纯前端实现静态资源下载全链路解析
前端·浏览器·vite
BD_Marathon38 分钟前
【JavaWeb】路径问题_前端绝对路径问题
前端
whyfail1 小时前
Vue原理(暴力版)
前端·vue.js
Bigger1 小时前
Coco AI 技术演进:Shadcn UI + Tailwind CSS v4.0 深度迁移指南 (踩坑实录)
前端·css·weui
踢球的打工仔1 小时前
jquery的基本使用(3)
前端·javascript·jquery
前端无涯1 小时前
Trae的使用
前端·ide·trae
WG_172 小时前
Linux:进程控制
前端·chrome
[seven]2 小时前
React Router TypeScript 路由详解:嵌套路由与导航钩子进阶指南
前端·react.js·typescript