确定文本在字符串中首次出现的位置-indexof()
在字符串中搜索文本并在找到后返回这段文本-match()
注意(在字符串化中执行对字母“ain”(/ain)的全局(/g)搜索,并显示匹配项。)
替换字符串中的字符-replace()
字符串转换为大写-toUpperCase()小写-toLowerCase()
把字符串拆分入数组-split
(数字)加 (数字字符串)的会出现连接的字符串
在除法运,乘法,减法运算时,Java script会尝试把字符串转换成数字。加法时,不会转换,会把他们当作两个字符串产生连接
用非数字字符串进行除法会得到 NaN (他的意思就是 not a number不是一个数),我们可以使用全局javascript函数isNAN()来检测他是不是一个数,会输出 true或者false
如果使用NaN来进行运算最终也会返回NaN,如果是字符串连接,就正常运行连接。NaN的类型是number(用typeof NaN会返回 number)
无穷大Infinity 如果计算出无穷大则会返回无穷大 可以用与判断语句。任何数除以0也会产生Infinity
toString()方法能够以各种进制输出一个数、
var mynumber = 255;
document.getElementById("demo").innerHTML =
mynumber.toString(2) + "
"
+ mynumber.toString(4) + "
"
+ mynumber.toString(6) + "
"
+ mynumber.toString(8) + "
"
+ mynumber.toString(10) + "
"
+ mynumber.toString(16) ;
使用new Number可以使数字变成对象,但是没有必要把数字创建为对象
测试结果 x 为 数字类型number,y为 对象object
绝对不要把数字创建为对象。
数字和对象无法安全地比较。对象和对象之间也无法安全的比较
valueOf()方法以数字返回数字
toExponential()可以把一个数变成指数表示法的数字
toFixed()方法将数字四舍五入到指定位数的数字
toPrecision()返回指定长度的数字
Math.random() 0-1之间的随机数
Math.floor() 取整数 ——组合在一起可成为范围随机数
如:Math.floor(Math.random()*10) 0-10
如:Math.floor(Math.random()*100) 0-99
如:Math.floor(Math.random()*1000) 0-999
如:Math.floor(Math.random()*1000)+1 1-1000
如:Math.floor(Math.random()*567) 0-566
范围内取随机数
javaScript 日期
var x = new Date();
document.getElementById("demo").innerHTML = d.getFullYear(); ——获取年份
document.getElementById("demo").innerHTML = d.getTime(); ——获取1970至今的毫秒数
————————设置对象日期的年份setFullYear
数组的遍历
箭头函数简化函数表达式
const fn = function (name) {
console.log('hello'+ name)
}
和普通的差距,fn被提出来到前面
const fn = name => 'hello' + name
箭头函数简化,等同于下面一个式子
function fn(name) {
return 'helle' + name
}
箭头函数多条语句表达式
const sum = (a,b) => a + b
const sum = arr => {
letresult = 0
for(let v in arr) {
result += v**2
}
return result
}
递归数的阶乘,斐波那契数列
function fn(n) {
if( n === 1)
return 1
else return n*fn(n-1)
}
console.log(fn(6))
function fn(n) { -------------------斐波那契数列
if( n === 1 || n === 2)
return 1
else return fn(n-1) + fn(n-2)
}
console.log(fn(9))