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
相关推荐
inferno3 分钟前
HTML基础(第一部分)
前端·html
kirinlau5 分钟前
pinia状态管理在vue3项目中的用法详解
前端·javascript·vue.js
zhuà!36 分钟前
腾讯地图TMap标记反显,新增标记
前端·javascript·vue.js
未知原色38 分钟前
web worker使用总结(包含多个worker)
前端·javascript·react.js·架构·node.js
ttod_qzstudio1 小时前
CSS改变图片颜色方法介绍
前端·css
curdcv_po1 小时前
我接入了微信小说小程序官方阅读器
前端·微信小程序
程序员鱼皮1 小时前
什么是 RESTful API?凭什么能流行 20 多年?
前端·后端·程序员
www_stdio1 小时前
让大语言模型拥有“记忆”:多轮对话与 LangChain 实践指南
前端·langchain·llm
inferno1 小时前
JavaScript 基础
开发语言·前端·javascript
cindershade2 小时前
Intersection Observer 的实战方案
前端