8个工程必备的JavaScript代码片段

下面是“8个工程必备的JavaScript代码片段”的完整攻略:

简介

这篇攻略主要介绍8个在前端工程中经常使用的JavaScript代码片段,这些代码片段能够提高你的代码质量和工作效率,让你的代码更加可读、可维护。

文章目录

  1. forEach循环遍历数组
  2. Object.keys()获取对象的属性名数组
  3. 数组去重
  4. 获取URL参数值
  5. 判断一个对象是否为空
  6. 判断两个对象是否相等
  7. 将HTML转义为实体
  8. 将实体转义为HTML

1. forEach循环遍历数组

forEach()方法是用于数组遍历的常用方法。它接受一个回调函数作为参数,该回调函数接收三个参数:当前元素、元素索引和数组自身。下面是一个简单的例子:

const arr = [1, 2, 3];
arr.forEach((item, index, array) => {
  console.log(item, index, array);
})

输出:

1 0 [1, 2, 3]
2 1 [1, 2, 3]
3 2 [1, 2, 3]

2. Object.keys()获取对象的属性名数组

Object.keys()方法返回一个给定对象的自身可枚举属性数组,包含对象上所有属性(不包括继承来的属性)。下面是一个例子:

const obj = { name: 'Jack', age: 20 };
const keys = Object.keys(obj);
console.log(keys);

输出:

['name', 'age']

3. 数组去重

对于一个包含重复元素的数组,可以使用ES6中的Set来进行去重:

const arr = [1, 2, 2, 3, 4, 4];
const uniqueArr = Array.from(new Set(arr));
console.log(uniqueArr); // [1, 2, 3, 4]

4. 获取URL参数值

对于一个URL地址,可以使用以下函数来获取指定参数的值:

function getUrlParam(url, key) {
  const paramsArr = url.split('?')[1].split('&');
  for (let i = 0; i < paramsArr.length; i++) {
    const param = paramsArr[i].split('=');
    if (param[0] === key) {
      return param[1];
    }
  }
}
const url = 'https://www.example.com/?id=123&name=Jack';
console.log(getUrlParam(url, 'id')); // 123

5. 判断一个对象是否为空

可以使用Object.keys()方法将对象的属性名转换为数组,然后判断该数组的长度是否为0来判断对象是否为空:

function isEmptyObj(obj) {
  return Object.keys(obj).length === 0;
}
const obj = { };
console.log(isEmptyObj(obj)); // true

6. 判断两个对象是否相等

可以使用JSON.stringify()将两个对象转换为字符串,然后再进行比较。需要注意的是,该方法只能比较简单的对象,对于包含函数或原型链对象等属性的复杂对象无法比较:

const obj1 = { name: 'Jack', age: 20 };
const obj2 = { name: 'Jack', age: 20 };
console.log(JSON.stringify(obj1) === JSON.stringify(obj2)); // true

7. 将HTML转义为实体

可以使用正则表达式中的特殊字符来匹配HTML标签,然后将其转义为实体。以下是一个简单的例子:

function escapeHTML(str) {
  const escapeChars = {
    '<': '&lt;',
    '>': '&gt;',
    '"': '&quot;',
    "'": '&#39;'
  };
  return str.replace(/[<>"']/g, char => escapeChars[char]);
}
const htmlStr = '<p>Hello "world"!</p>';
console.log(escapeHTML(htmlStr)); // &lt;p&gt;Hello &quot;world&quot;!&lt;/p&gt;

8. 将实体转义为HTML

可以使用浏览器提供的内置API将实体转换为HTML,例如使用document.createElement()创建一个p标签来显示转义后的HTML文本:

function unescapeHTML(str) {
  const div = document.createElement('div');
  div.innerHTML = str;
  return div.textContent;
}
const entityStr = '&lt;p&gt;Hello &quot;world&quot;!&lt;/p&gt;';
console.log(unescapeHTML(entityStr)); // <p>Hello "world"!</p>

结语

以上就是8个在前端工程中经常使用的JavaScript代码片段,希望能够对你的工作有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:8个工程必备的JavaScript代码片段 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • AJAX的跨域访问-两种有效的解决方法介绍

    当浏览器从一个域名中的页面跳转到另一个域名的页面时,就会发生所谓的跨域问题。因此网页中的 AJAX 异步请求有时会由于跨域原因而不能正常返回数据。下面将介绍两种有效的跨域访问 AJAX 的解决方法。 方法一:JSONP 在前端中,通过 JSONP 的方式可以实现跨域请求,并且使用比较简便。JSONP 是通过使用 script 标签进行异步请求,使用 call…

    JavaScript 2023年6月11日
    00
  • js前端表单数据处理表单数据校验

    下面是详细讲解js前端表单数据处理和表单数据校验的完整攻略: 1. 表单数据处理 前端获取表单数据的方式有很多种,可以使用原生js获取DOM节点的方式,也可以使用jQuery等库来获取表单数据。最常用的方法是通过form表单的submit事件来获取表单数据: const formData = new FormData(document.getElementB…

    JavaScript 2023年5月27日
    00
  • javascript 解决表单仍然提交即使监听处理函数返回false

    当我们使用JavaScript对表单进行监听处理时,通常会添加一个事件处理函数,并在函数中使用return false语句来阻止表单的提交。但是,在某些情况下,仍然有可能发生表单提交的情况,这时我们需要采取其他措施来确保表单不会提交。下面是一些解决方法: 1. 使用preventDefault方法 preventDefault()方法可以阻止元素发生默认行为…

    JavaScript 2023年6月10日
    00
  • js判断是否按下了Shift键的方法

    要判断JavaScript代码中是否按下了Shift键,可以借助事件对象来实现该功能。以下是实现该功能的详细攻略: 获取事件对象 在JavaScript中,事件对象会在触发事件的时候自动创建,可以通过事件处理函数的第一个参数来获取。要获取键盘事件的事件对象,可以绑定键盘事件,例如keydown或keyup事件,并传入event作为事件处理函数的第一个参数,获…

    JavaScript 2023年6月11日
    00
  • 如何在TypeScript中正确的遍历一个对象

    要在 TypeScript 中正确地遍历一个对象,需要使用 for…in 循环。for…in 循环允许我们遍历对象的所有属性,而不需要手动指定每个属性的名称。 下面是遍历对象的完整步骤: 1. 创建一个对象 首先,我们需要创建一个对象。例如,我们创建以下对象: const myObject = { name: "John", ag…

    JavaScript 2023年5月27日
    00
  • JavaScript中eval()函数用法详解

    下面就来详细讲解一下”JavaScript中eval()函数用法详解”的完整攻略。 一、eval()函数的基本语法 eval()函数的基本语法如下: eval(string) 其中,参数string是被解析执行的JavaScript代码字符串。 二、eval()函数的用途 eval()函数可以把一个字符串当作JavaScript代码进行解析执行。这在某些场景…

    JavaScript 2023年5月27日
    00
  • js中的变量

    在JavaScript中,我们用var关键字来声明一个变量,var关键字后紧跟变量的名称,例如: var a1 = 40; a1就是变量的名称,用来标识一个变量,所以它又称为变量的标识符。一个变量的标识符必须是由字母、数字、下划线组成,但首字符不能为数字,如: 1user、#user 都不是正确的标识符,而user1、_user是正确的标识符。在JavaSc…

    JavaScript 2023年5月9日
    00
  • JavaScript实现返回顶部按钮案例

    下面详细讲解一下“JavaScript实现返回顶部按钮案例”的完整攻略。 1. 添加HTML代码和CSS样式 首先在HTML文件中添加返回顶部按钮的HTML代码,例如: <a href="#" id="back-to-top" title="返回顶部"> <i class=&quo…

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