随手笔记-03(字符串 + 数字)

一、字符串

  1. 字符串-替换 – replace()
"hello, world".replace("world", "mars"); // "hello, mars"
  1. 字符串转大写 – toUpperCase(); 字符串转换为小写 – toLowerCase()
"hello".toUpperCase(); // "HELLO"
"ABCDEFGHIJK".toLowerCase() // abcdefghijk
  1. 字符串返回指定位置的字符–charAt();获取指定位置字符的字符编码(Unicode编码)-- charCodeAt();可以根据字符编码获取字符 – fromCharCode()
"hello".charAt(0); // "h"
"Hello World".charCodeAt(1); // 101
console.log(String.fromCharCode(0x2682));  // 中
  1. concat() —— 连接两个或多个字符串,作用和 “+” 一样
 console.log("Hello World".concat("--你好,世界", "再见")); // // Hello World--你好,世界再见
  1. indexOf() —— 从前往后检索一个字符串中是否含有指定内容 (区分大小写);lastIndexOf() —— 从后往前检索一个字符串中是否含有指定内容 (区分大小写)
/**
  *  - 如果字符串中含有该内容,则会返回其第一次出现的索引;如果没找到指定内容,则返回-1
  *  - 第二个参数:指定开始查找的位置
 */
 console.log("Hello World".indexOf('H'));  // 0
 console.log("Hello World".indexOf('h'));  // -1
 console.log("Hello World".indexOf('o'));  // 4
 console.log("Hello World".indexOf('o', 5));  // 7
 console.log("Hello World".lastIndexOf('H'));  // 0
 console.log("Hello World".lastIndexOf('h'));  // -1
 console.log("Hello World".lastIndexOf('o'));  // 7
 console.log("Hello World".lastIndexOf('o', 5));  // 
  1. slice() —— 从字符串中截取指定内容,不会影响原字符串,而是将截取到内容返回;substring() —— 用来截取一个字符串,和slice类似,不会影响原字符串,而是将截取到内容返回
/**
 * slice()参数:
 *   第一个:开始位置的索引(包括开始位置)
 *   第二个:结束位置的索引(不包括结束位置)
 *         - 如果省略第二个参数,则会截取到后边所有的
 *   也可以传递一个负数,负数的话将会从后边计算
*/
console.log('abcdefgh'.slice(0, 2)) // ab
console.log('abcdefgh'.slice(1, 4)) // bcd
console.log('abcdefgh'.slice(1)) // bcdefgh
/**
 * substring()参数:
 *   第一个:开始位置的索引(包括开始位置)
 *   第二个:结束位置的索引(不包括结束位置)
 *         - 如果省略第二个参数,则会截取到后边所有的
 *   不同的是这个方法不能接受负值作为参数,如果传递了一个负值,则默认使用0
 *   而且会自动调整参数的位置,如果第二个参数小于第一个,则自动交换位置
*/
console.log('abcdefgh'.substring(0, 2))  // ab
console.log('abcdefgh'.substring(1, 0))  // a
  1. substr() —— 用来截取字符串,不会影响原字符串,而是将截取到内容返回
/**
* substr()  参数:
*   - 第一个:截取开始位置的索引(包括开始位置)
*   - 第二个:截取的长度
*/
console.log('abcdefgh'.substr(3, 2)  // de
  1. split() —— 将字符串拆分为一个数组,不会影响原字符串,而是将拆分的内容返回
/**
* split()  参数:
*   - 第一个:需要一个字符串作为参数,将会根据该字符串去拆分数组  可选
*   - 第二个:指定返回的数组的最大长度  可选
*/
console.log("abc,bcd,efg,hij".split(',')) // ['abc', 'bcd', 'efg', 'hij']
console.log(str.split(',',2)) // ['abc', 'bcd']
/**
 * 如果传递一个空串作为参数,则会将每个字符都拆分为数组中一个元素
*/
console.log("abc,bcd,efg".split('')) // ['a', 'b', 'c', ',', 'b', 'c', 'd', ',', 'e', 'f', 'g']
  1. X.trim() —— 用来删除字符串两端的空白字符并返回,trim方法并不影响原来的字符串本身,它返回的是一个新的字符串,它只能去除字符串两端的空格,不能去除中间的空格;trimStart() —— 清除字符串左侧空白;trimEnd() —— 清除字符串右侧空白
console.log('  abc defg  '.trim()) //abc  defg
console.log('  abc  defg  '.trimStart()) //abc  defg 
console.log('  abc  defg  '.trimEnd()) //  abc  defg
// 去除字符串里所有空格
console.log('  abc defg  '.replace(/\s*/g,"")) //abcdefg

二、数字

  1. 数字千分位加“,”
const numFormat = (num:any)=> {
    var c = (num.toString().indexOf ('.') !== -1) ? num.toLocaleString() : num.toString().replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');
    return c;
}
  1. Math.sign() 判断一个数到底为正数 负数 还是零
console.log(Math.sign(100));  // 1
console.log(Math.sign(0)); // 0
console.log(Math.sign(-20000)); // -1
  1. Number.parseInt() 和 Number.parseFloat() parseInt()parseFloat() 字符串转整数,其中parseInt() 和 parseFloat() 是全局的函数
console.log(Number.parseInt('5211314love'));  // 5211314
console.log(Number.parseFloat('3.1415926神奇')); // 3.1415926
console.log(parseInt('5211314love'));  // 5211314
console.log(parseFloat('3.1415926神奇')); // 3.1415926
  1. Number.isNaN() 检测一个数值是否为 NaN
console.log(Number.isNaN(123));  // false
  1. Math.ceil() —— 对一个数进行向上取整,小数点只要有值就自动进1;Math.floor() —— 对一个数进行向下取整,小数点只要有值就自动减1;Math.round() —— 四舍五入; Math.trunc() —— 将数字的小数部分抹掉
// Math.ceil() 
console.log(Math.ceil(1.2))  // 2
console.log(Math.ceil(1.0))  // 1
console.log(Math.ceil(-1.5))  // -1
// Math.floor() 
console.log(Math.floor(1.5))  // 1
console.log(Math.floor(1.0))  // 1
console.log(Math.floor(-3.9))  // -4
// Math.round() 
console.log(Math.round(1.5))  // 2
console.log(Math.round(1.2))  // 1
console.log(Math.round(1.0))  // 1
console.log(Math.round(-1.5))  // -1
// Math.trunc()
console.log(Math.trunc(3.5)); // 3
console.log(Math.trunc(-3.9)); // -3
  1. Math.random() 用来生成一个0-1之间的随机数
/**
  *  - 生成一个1-10之间的随机数  *10
  *  - 生成一个1-x之间的随机数  *x
  *  - 生成一个x~y之间的随机数  Math.round(Math.random()*(y-x))+x
 */
 console.log(Math.round(Math.random()*9)+1);  // 1~10
 console.log(Math.round(Math.random()*8) + 2);  // 2~10
  1. Math.max() - 获取多个数中的最大值;Math.min() - 获取多个数中的最小值
var max = Math.max(10,49,50,20,2,100)
var min = Math.min(10,49,50,20,2,100)
console.log('最大值=',max,'最小值=',min) // 最大值= 100 最小值= 2
  1. Math.pow(x,y) - 返回x的y次幂
  2. Math.sqrt(x) - 返回x的平方根
console.log(Math.pow(2,3)) // 8
console.log(Math.sqrt(9)) // 3
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值