JavaScript 简写语法

JavaScript 简写语法

1、简写的闭包自执行函数(Immediately Invoked Function Expression (IIFE))

使用括号将函数定义包裹起来,再在末尾加上另一对括号,即可创建一个自执行函数。例如:

(() => {
  console.log("Hello, world!");
})();

2、简写的对象方法定义(Method Definition)

使用方法名和箭头函数的简写方式,可以更简洁地定义对象的方法。例如:

const obj = {
  x: 1,
  add(y) {
    return this.x + y;
  },
  double: () => this.x * 2,
};
console.log(obj.add(2)); // 3
console.log(obj.double()); // NaN

注意,箭头函数中的 this 指向的是定义时的上下文,而不是调用时的上下文。

3、简写的类定义(Class Definition)

使用 class 和 constructor 的简写方式,可以更简洁地定义类。例如:

class Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

  sayHello() {
    console.log(
      `Hello, my name is ${this.name}, and I am ${this.age} years old.`
    );
  }
}
const alice = new Person("Alice", 20);
alice.sayHello(); // 'Hello, my name is Alice, and I am 20 years old.'

4、简写的模块导出(Module Export)

使用 export 和 default 的简写方式,可以更简洁地导出模块。例如:

// math.js
export const add = (a, b) => a + b;
export const subtract = (a, b) => a - b;
export default {
  multiply: (a, b) => a * b,
  divide: (a, b) => a / b,
};

// main.js
import { add, subtract } from "./math.js";
import math from "./math.js";
console.log(add(1, 2)); // 3
console.log(subtract(3, 2)); // 1
console.log(math.multiply(2, 3)); // 6
console.log(math.divide(6, 2)); // 3

5、解构赋值(Destructuring Assignment)

使用花括号{}或方括号[]可以将对象或数组中的值解构(拆解)到变量中。例如:

const obj = { x: 1, y: 2 };
const { x, y } = obj;
console.log(x, y); // 1, 2

const arr = [1, 2, 3];
const [a, b] = arr;
console.log(a, b); // 1, 2

6、通过操作符简写语法

JavaScript 操作符

7、对象字面量简写

可以使用对象字面量的简写形式来定义对象,例如:

const name = "Alice";
const age = 30;

// 传统写法
const user = {
  name: name,
  age: age,
};

// 简写写法
const user = { name, age };

8、模板字符串简写

可以使用模板字符串的简写形式来拼接字符串,例如:

const name = "Alice";
const age = 30;

// 传统写法
const message = "My name is " + name + " and I am " + age + " years old.";

// 简写写法
const message = `My name is ${name} and I am ${age} years old.`;

9、省略对象方法的 function 关键字

在对象中定义方法时,可以省略 function 关键字,例如:

const obj = {
  foo() {
    // ...
  },
  bar() {
    // ...
  },
};

10、省略参数列表的圆括号

在只有一个参数的箭头函数中,可以省略参数列表的圆括号,例如:

const double = (x) => x * 2;

11、省略对象属性的引号

在对象字面量中定义属性时,可以省略属性名称的引号,前提是属性名称不包含空格和特殊字符,例如:

const obj1 = {
  prop1: "value1",
  prop2: "value2",
  prop3: "value3",
};

const obj2 = {
  prop1: "value1",
  "prop with spaces": "value2",
  ["computedProp"]: "value3",
};

12、省略布尔值的比较操作符

可以直接将布尔值作为条件,而不必使用比较操作符,例如:

// 传统写法
if (done === true) {
  // ...
}

// 简写写法
if (done) {
  // ...
}

原文链接:https://www.cnblogs.com/yuzhihui/p/17332214.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript 简写语法 - Python技术站

(0)
上一篇 2023年4月22日
下一篇 2023年4月22日

相关文章

  • javascript的函数、创建对象、封装、属性和方法、继承

    下面我将详细讲解JavaScript中函数、创建对象、封装、属性和方法、继承的完整攻略,并且会给出至少两个示例。 函数 函数的定义 函数是一段被封装起来的可复用代码块。在 JavaScript 中,函数可以通过 function 关键字来定义。函数定义的一般语法格式为: function functionName(param1, param2, …){ …

    JavaScript 2023年5月27日
    00
  • 用Javascript 获取页面元素的位置的代码

    获取页面元素的位置是前端开发中的一个基本需求,Javascript提供了多种方法来获取元素的位置信息。下面是获取页面元素位置的代码攻略: 1. 通过getBoundingClientRect方法获取元素的位置 getBoundingClientRect方法是Javascript提供的获取元素位置的函数,它返回一个矩形对象,包括一个元素的左上角、右下角的坐标、…

    JavaScript 2023年6月10日
    00
  • JavaScript关于数组的四道面试题

    以下是JavaScript关于数组的四道面试题的详细攻略: 面试题一:如何将数组扁平化? 问题描述 给定一个多维数组,如何将其转为一维数组,即扁平化? 解决方案 我们可以使用ES6的 flat 方法,该方法接收一个可选参数depth,指定展开的深度。当不传depth时,默认展开所有层级。 同时,为了兼容性,我们也可以使用递归实现深度优先的扁平化。 示例代码如…

    JavaScript 2023年5月27日
    00
  • JS计算输出100元钱买100只鸡问题的解决方法

    关于“JS计算输出100元钱买100只鸡问题的解决方法”的完整攻略,下面是我的详细讲解: 问题描述 问题描述如下:假设农场里只有鸡和兔子,用 100 元钱买了 100 只鸡,鸡的价格是5元一只,兔子的价格是3元一只,请问鸡和兔子各有多少只? 解决方法 这是一道数学问题,我们可以用代数方程来解决。设鸡的数量为 x,兔子的数量为 y,则有以下两个式子: x + …

    JavaScript 2023年5月28日
    00
  • js完全解析url和拼接

    当我们在编写JavaScript代码时,有时候需要操作URL来完成一些特定的需求,比如向服务器发送请求、获取参数以及跳转到其他页面等。本文将为您详细讲解如何完全解析和拼接URL,以便于您在开发中更加轻松地完成URL相关的操作。 解析完整URL 我们先来看一下如何解析一个完整的URL,这个过程中要获取的部分包括协议、主机、端口、路径、查询参数以及哈希值。我们可…

    JavaScript 2023年6月11日
    00
  • js属性对象的hasOwnProperty方法的使用

    js对象中的属性可以分为两类,一类是对象自身定义的属性,另一类是从原型链中继承而来的属性。js属性对象的hasOwnProperty()方法用于判断一个属性是否是对象自身定义的属性,其用法如下: 对象.hasOwnProperty(属性名称) 其中,对象为需要检查的对象,属性名称是需要检查的属性,如果该属性是对象自身定义的属性,则返回true,否则返回fal…

    JavaScript 2023年5月27日
    00
  • javascript md5加密代码

    请允许我详细讲解一下 Javascript 编程语言中如何实现 MD5 哈希加密。 什么是 MD5 哈希加密 MD5 是一种哈希算法,可以将任意长度的数据块进行不可逆转的压缩,它被广泛用于密码学的应用中,以保证密码的安全性。MD5 可以将任意长度的消息压缩为 128 bit 的摘要,并且具有不可逆性、唯一性、高效性等特点。 MD5 加密的 Javascrip…

    JavaScript 2023年5月19日
    00
  • jquery实现表单验证并阻止非法提交

    下面就是完整攻略。 1. 引入jQuery文件 表单验证需要使用jQuery库,所以要先在HTML文档中引入jQuery文件。可以在head标签内添加如下代码来引入jQuery文件: <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"&…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部