您的位置:

JS截取数字的方法详解

一、JS截取数字前几位

在实际开发中,我们经常需要对数字进行截取操作,下面是JS截取数字前几位的代码示例:

/**
 * js截取数字前几位
 * @param {number} num 要截取的数字
 * @param {number} len 截取的位数
 * @return {number} 截取后的数字
 */
function truncateNumber(num, len) {
  if (typeof num !== 'number' || len < 0) return NaN;
  return Number(num.toString().substr(0, len));
}

以上代码中,我们定义了一个函数 truncateNumber,在函数中接收两个参数 num 和 len,分别表示要截取的数字和要截取的位数。在函数内部,我们首先判断传入的参数是否合法,如果不合法,则返回 NaN。

接着,我们将 num 转换成字符串,并使用 substr 方法截取出前 len 个字符,即截取前 len 位数字,最后使用 Number 方法将其转换为数字类型,并返回。

二、JS截取数组的一部分

对于数组的截取操作,JS 中提供了多种方法,下面是常用的两种方法:

1. slice 方法

slice 方法可以从指定的开始索引截取数组,并返回一个新的数组,不会改变原数组,代码如下:

let arr = [0, 1, 2, 3, 4, 5];
let newArr = arr.slice(2, 4); // [2, 3]
console.log(newArr);

以上代码中,我们定义了一个数组 arr,使用 slice 方法从索引为 2 到索引为 3(不包括 4)的位置截取出子数组 [2, 3]。

2. splice 方法

splice 方法可以在指定位置插入或删除元素,并返回被删除的元素组成的数组,同时也会改变原数组,代码如下:

let arr = [0, 1, 2, 3, 4, 5];
let removed = arr.splice(2, 2); // [2, 3]
console.log(arr); // [0, 1, 4, 5]

以上代码中,我们定义了一个数组 arr,使用 splice 方法从索引为 2 的位置开始,删除 2 个元素(2 和 3),原数组 arr 变为 [0, 1, 4, 5],同时截取出来的子数组为 [2, 3]。

三、JS截取数字前两位、最后一位

JS 中常用的截取数字前两位和最后一位的方法如下:

1. 截取数字前两位

let num = 12345;
let result = Math.floor(num / 100);
console.log(result); // 123

以上代码中,我们使用 Math 对象中的 floor 方法对 num / 100 进行向下取整,即可截取出数字前两位。

2. 截取数字最后一位

let num = 12345;
let result = num % 10;
console.log(result); // 5

以上代码中,我们使用取模运算符 % 对 num 取 10 的余数,即可截取出数字的最后一位。

四、JS截取数字前几位函数

除了上面提到的截取数字前两位的方法外,我们也可以封装一个函数来实现截取数字前 len 位的操作,代码如下:

/**
 * js截取数字前几位
 * @param {number} num 要截取的数字
 * @param {number} len 截取的位数
 * @return {number} 截取后的数字
 */
function truncateNumber(num, len) {
  if (typeof num !== 'number' || len < 0) return NaN;
  return Math.floor(num / Math.pow(10, num.toString().length - len));
}

以上代码中,我们对截取数字前 len 位的方法进行了封装,实现与之前的 truncateNumber 函数相同。不同的是,这里使用了 Math 对象中的 pow 方法来计算需要除以的数,而不是使用字符串的 substr 方法,同时也不需要进行字符串的转换。

五、JS字符串截取

除了对数字进行截取外,JS 中也提供了字符串截取的方法,代码如下:

1. 截取字符串

使用字符串的 substr 或 substring 方法可以对字符串进行截取,区别在于第二个参数的含义,代码如下:

let str = 'hello world';
let result1 = str.substr(0, 5); // 'hello'
let result2 = str.substring(0, 5); // 'hello'

以上代码中,我们使用 substr 和 substring 方法分别截取出了字符串的前 5 个字符。

2. 截取字符串前几位

同样,我们也可以封装一个函数来实现截取字符串前 len 位的操作,代码如下:

/**
 * js截取字符串前几位
 * @param {string} str 要截取的字符串
 * @param {number} len 截取的位数
 * @return {string} 截取后的字符串
 */
function truncateString(str, len) {
  if (typeof str !== 'string' || len < 0) return '';
  return str.substr(0, len);
}

以上代码中,我们对截取字符串前 len 位的方法进行了封装,实现与之前的 truncateNumber 函数相同。不同的是,这里使用了字符串的 substr 方法进行截取,而不是计算需要截取的位置。

六、JS截取数组选取3~5个

对于需要从数组中选取一部分元素的场景,我们可以使用 slice 方法,代码如下:

let arr = [0, 1, 2, 3, 4, 5];
let newArr = arr.slice(3, 6); // [3, 4, 5]
console.log(newArr);

以上代码中,我们使用 slice 方法从索引为 3 的位置开始,截取出包括索引为 3、4、5 的元素组成的子数组 [3, 4, 5]。

七、总结

本文主要对 JS 截取数字的多种方法进行了详细的介绍,包括截取数字前几位、截取数组的一部分、截取数字前两位和最后一位、截取数字前几位函数、字符串截取和截取数组选取3~5个元素等,希望可以帮助到读者更好地了解和利用 JS 中的截取操作。

JS截取数字的方法详解

2023-05-19
重学java笔记,java笔记总结

2022-11-23
JS中字符串截取的详解

2023-05-23
java方法整理笔记(java总结)

2022-11-08
Mac笔记:在日常生活中高效实用的笔记工具

2023-05-18
js高级程序设计笔记14(js高级程序设计笔记14页)

本文目录一览: 1、JavaScript高级程序设计 该怎么看 2、JavaScript学习笔记之数组基本操作示例 3、JS中有关sort以及return的问题 JavaScript高级程序设计 该怎

2023-12-08
怎么抽取网页整理,怎么抽取网页整理数据

2023-01-08
印象笔记记录java学习(Java成长笔记)

2022-11-12
java基础知识学习笔记一,Java基础笔记

2022-11-21
从多个方面详解JS截取最后一个/后的字符串

2023-05-19
Markdown笔记的全方位介绍

2023-05-18
微信小程序js页面字符串截取,字符串截取 js

本文目录一览: 1、关于JS截取字符串以及截取数组项的几种常见方法解析 2、js截取字符串怎么写? 3、js字符串如何截取最后一个字符 4、微信小程序,小程序论坛,weixin,小程序字符串怎么截取

2023-12-08
详解JS字符串截取某个字符后面的内容

2023-05-20
JS正则截取字符串详解

2023-05-20
java学习笔记(java初学笔记)

2022-11-14
截取字符串的方法

2023-05-18
使用JS的截取字符串方法创建标题

2023-05-10
以js截取最后一个字符串为中心的方法

2023-05-10
js字符串截取后两位的相关方法

2023-05-21
前端js常用字符串处理实例(前端字符串常用方法)

本文目录一览: 1、《web前端笔记7》js字符—获取、查找、遍历、提取、替换方法总结 2、JS字符串截取常用方法 3、js字符串拆分? 4、js中字符串的常见方法 《web前端笔记7》js字符—获取

2023-12-08