一.Number类型
valueOf():返回对象表示的基本类型的数值。
toString():传递一个表示基数的参数,告诉它返回几进制数值的字符串形式。
var num=10;
console.log(num.toString());//=>"10"
console.log(num.toString(2));//=>"1010"
console.log(num.toString(8));//=>"12"
console.log(num.toString(10));//=>"10"
console.log(num.toString(16));//=>"a"
toFixed():按照指定的小数位返回数值的字符串表示。
console.log(num.toFixed(2));//=>"10.00"
toExponential():返回以指数表示法表示的数值的字符串形式。
console.log(num.toExponential(1));//=>"1.0e+1"
toPrecision():可能返回固定大小格式,也可能返回指数格式。
var num2=99;
console.log(num2.toPrecision(1));//=>1e+2
console.log(num2.toPrecision(2));//=>99
console.log(num2.toPrecision(3));//=>99.0
二.String类型
1)length属性
var str1="hello world";
console.log(str1.length);//=>11
2)字符方法
2.1)charAt():以单字字符串的形式返回给定位置的那个字符。
2.2)charCodeAt():以字符编码字符串的形式返回给定位置的那个字符。
console.log(str1.charAt(1));//=>e
console.log(str1.charCodeAt(1));//=>101
console.log(str1[1]);//=>e
3)字符串操作方法:
3.1)concat():用于将一或多个字符串拼接起来,返回拼接得到的新字符串。
实践中使用最多的还是加号操作符(+).
var str2="hello ";
var result=str2.concat("world");
console.log(result);//=>hello world
3.2)slice()、substring()和
substr():返回被操作字符串的一个子字符串。
第一个参数指定字符串的开始位置,
slice()、substring()中第二个参数表示子字符串到哪里结束。
substr()中第二个参数指定的则是返回的字符个数。
var str3="hello world";
console.log(str3.slice(3));//=>lo world
console.log(str3.substring(3));//=>lo world
console.log(str3.substr(3));//=>lo world
console.log(str3.slice(3,7));//=>lo w
console.log(str3.substring(3,7));//=>lo w
console.log(str3.substr(3,7));//=>lo worl
在传递给这些方法的参数是负值的情况下:
slice()方法会将传入的负值与字符串的长度相加;
substr()方法将负的第一个参数加上字符串的长度,而将第二个参数转换为0;
substring()方法会把所有负值参数都转换为0.
console.log(str3.slice(-3));//=>rld
console.log(str3.substring(-3));//=>hello world
console.log(str3.substr(-3));//=>rld
console.log(str3.slice(3,-4));//=>lo w
console.log(str3.substring(3,-4));//=>hel
console.log(str3.substr(3,-4));//=>""
3.3)字符串位置方法:indexOf()、lastIndexOf()
从一个字符串中搜索给定的子字符串,然后返回子字符串的位置。
var str4="My name is Jason,I love javascript,and coding everyday!";
var positions=[];
var pos=str4.indexOf("a");
while(pos>-1){
positions.push(pos);
pos=str4.indexOf("a",pos+1);
}
console.log(positions);//=>[4, 12, 25, 27, 35, 52]
3.4)trim()方法:创建一个字符串的副本,删除前置及后缀的所有空格,然后返回结果。
var str5=" hello world ";
console.log(str5.trim());//=>hello world
3.5)字符串大小写转换方法
var str6="Hello Javascript";
console.log(str6.toLowerCase());//=>hello javascript
console.log(str6.toUpperCase());//=>HELLO JAVASCRIPT
3.6)字符串的模式匹配方法
match():在字符串上调用这个方法,本质上与调用RegExp的exec()方法相同。
var text="cat,bat,sat,fat";
var pattern=/.at/;
var matches=text.match(pattern);
console.log(matches.index);//=>0
console.log(matches[0]);//=>"cat"
console.log(pattern.lastIndex);//=>0
search():返回字符串中第一个匹配项的索引,如果没有找到匹配项,则返回-1.
var text="cat,bat,sat,fat";
var pos=text.search(/at/);
console.log(pos);//=>1
replace():简化替换子字符串的操作,第一个参数可以是一个RegExp对象或者一个字符串,第二个参数可以是一个字符串或者一个函数。要想替换所有子字符串,唯一的办法是提供一个正则表达式,而且要指定全局(g)标志。
var text="cat,bat,sat,fat";
var result=text.replace(/at/g,"ond");
console.log(result);//=>cond,bond,sond,fond
var text="cat,bat,sat,fat";
result=text.replace(/(.at)/g,"word ($1)");
console.log(result);//=>word (cat),word (bat),word (sat),word (fat)
split():可以基于指定的分隔符将一个字符串分割成多个子字符串,并将结果放在一个数组中。
var colors="red,blue,green,yellow";
var colors1=colors.split(",");
var colors2=colors.split(",",2);
var colors3=colors.split(/[^\,]+/);
console.log(colors1);//=>["red", "blue", "green", "yellow"]
console.log(colors2);//=>["red", "blue"]
console.log(colors3);//=>["", ",", ",", ",", ""]
localeCompare():比较两个字符串,根据字符串在字母表中的位置,并返回-1或0或1
var str7="yellow";
console.log(str7.localeCompare("brick"));//=>1
console.log(str7.localeCompare("yellow"));//=>0
console.log(str7.localeCompare("zoo"));//=>-1
三.Global对象
URI编码方法:
encodeURI():主要用于整个URI进行编码。
encodeURIComponent():主要用于对URI中的某一段进行编码。
var uri="http://www.wrox.com/illegal value.htm#start";
console.log(encodeURI(uri));//=>http://www.wrox.com/illegal%20value.htm#start
console.log(encodeURIComponent(uri));//=>http%3A%2F%2Fwww.wrox.com%2Fillegal%20value.htm%23start
URI解码方法:
decodeURI():只能对使用encodeURI()替换的字符进行解码。
decodeURIComponent():能够解码使用encodeURIComponent()编码的所有字符。
var enUri="http%3A%2F%2Fwww.wrox.com%2Fillegal%20value.htm%23start";
console.log(decodeURI(enUri));//=>http%3A%2F%2Fwww.wrox.com%2Fillegal value.htm%23start
console.log(decodeURIComponent(enUri));//=>http://www.wrox.com/illegal value.htm#start
四.Math对象
1)Math对象的属性
console.log(Math.PI);//=>3.141592653589793
console.log(Math.E);//=>2.718281828459045
2)min()和max()方法
var max=Math.max(3,54,32,16);
console.log(max);//=>54
var min=Math.min(3,54,32,16);
console.log(min);//=>3
var values=[1,2,3,4,5,6,7,8];
var max2=Math.max.apply(Math,values);
console.log(max2);//=>8
3)舍入方法
Math.ceil():向上舍入。
Math.floor():向下舍入。
Math.round():四舍五入。
console.log(Math.ceil(25.9));//=>26
console.log(Math.ceil(25.5));//=>26
console.log(Math.ceil(25.1));//=>26
console.log(Math.round(25.9));//=>26
console.log(Math.round(25.5));//=>26
console.log(Math.round(25.1));//=>25
console.log(Math.floor(25.9));//=>25
console.log(Math.floor(25.5));//=>25
console.log(Math.floor(25.1));//=>25
4)random()方法:返回大于等于0小于1的一个随机数。
var num=Math.floor(Math.random()*10+1);
console.log(num);//=>介于1~10之间的随机数
function selectFrom(lowerValue,upperValue){
var choices=upperValue-lowerValue+1;
return Math.floor(Math.random()*choices+lowerValue);
}
var num2=selectFrom(2,10);
console.log(num2);//=>介于2~10之间的随机数
var colors=['red','green','blue','yellow','black','purple','brown'];
var color=colors[selectFrom(0,colors.length-1)];
console.log(color);//随机数组中包含的任一个字符串