js-生成随机字符串

JavaScript019

js-生成随机字符串,第1张

通过 Math.random() 生成随机小数[0, 1),使用 toString(36) 转化为36进制的字符串,substring切割掉前面的 0. 。

存在问题:当为0时会返回空字符串。最多生成10位字符串,而字符串化时会删除尾随零,所以实际字符串长度不定

stackoverflow

只生成16进制的字符串,低版本浏览器不支持

Crypto

字符串的属性:length =》 代表字符串长度

字符串中,字符的位置也是从0开始,依次递增。

不会修改原字符串,会将拼接好的字符串以返回值的方式返回出来。

可以在字符串中查找指定的字符。

可以查到的的话返回值字符所在的位置。

查不到返回 -1。

如果要查找的字符在字符中存在多个,永远只找一个。

使用方法和 indexOf 一样。

但是 indexOf 是从前往后查找,lastindexOf() 是从后往前查找。

有两个参数。

第一个参数,旧的字符。

第二个参数,新的字符。

不会修改原数组。

会将替换好的数组以返回值的形式返回出来。

如果旧的字符在字符串中不止一个,则替换第一个。

不会改变原数组。

会将转化好的数组以返回值的形式返回出来 。

如果括号中什么都不写;则将整个字符串作为数组的一个元素转化成数组。

如果括号中是空字符串,则将每个字符都作为一个数组的元素转化成数组。

如果括号中写字符,则将这个字符变成逗号(,),并以其隔开数组元素。

如果字符串中没有这个字符,效果相当于什么都不写。

如果目标字符在开头或者结尾,则转成数组后,生成一个空字符串的元素。

split 还有第二个参数:

第二个参数代表转成数组后,所保留的元素的数量。(从以转化好的数组下标为0的元素开始)

有两个参数

第一个参数:起始的位置

第二个参数:截取的数量

不会改变原数组

会将截取到的字符串以返回值的形式返回出来

有两个参数

第一个参数:起始的位置(返回时包括位置所对应的字符)

第二个参数:结束的位置(返回时不包括位置所对应的字符)

不会改变原数组

会将截取到的字符串以返回值的形式返回出来

不会改变原数组

会将转换好的字符串以返回值的形式返回出来

不会改变原数组

会将转换好的字符串以返回值的形式返回出来

所有随机的东西都要用到随机数,js中是用到Math.random()这个方法,获取0~1之间的数。

1、Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值,是Java语言常用代码。例如:double a=Math.random()*(3-1)+1,设置一个随机1到3的变量。

2、生成一个4位的随机字符串代码如下:

public static void main(String[]args){

String result=""

for(inti=0i<4i++){

//生成97-122的int型的整型

int intValue=(int)(Math.random()*26+97)

//将intValue强制转化成char类型后接到result后面

result=result+(char)intValue

}

//输出字符串

System.out.println(result)

}