zfxcms ^回到顶部

您的当前位置:首页 > web资讯 > JS > js基础-字符串和数字

js基础-字符串和数字

所属分类: JS   2019-12-27 15:47:51  编辑:admin  浏览次数 567 次

数字

new Number()创建一个数字对象

<script>

var x = new Number(123);

 document.write('数字对象x的值:'+x);

 document.write("<br>");

 document.write('数字对象x的类型:'+typeof x); //通过typeof 获知这是一个object

 document.write("<br>");

var y = 123;

 document.write('基本类型y的值:'+y);

 document.write("<br>");

 document.write('基本类型y的类型:'+typeof y); //通过typeof 获知这是一个number

</script>

 

MIN_VALUE 最小值

MAX_VALUE 最大值

<script>

 document.write('Number对象的最小值:'+Number.MIN_VALUE);

 document.write("<br>");

 document.write('Number对象的最大值:'+Number.MAX_VALUE);

</script>

 

NaN(Not a Number),表示不是一个数字
当通过非数字创建Number的时候,就会得到NaN.
注意:不能通过是否等于Number.NaN来判断是否不是一个数字,应该使用函数isNaN()

<script>

function p(s){

  document.write(s);

  document.write("<br>");

}

var a = new Number("123abc"); //通过非数字创建Number对象,得到的是一个NaN

p('通过非数字字符串"123abc"创建出来的Number对象 a的值是:'+a);

p('但是, a==Number.NaN会返回:'+(a==Number.NaN)); //即便是一个NaN "不等于" Number.NaN

p('正确判断是否是NaN的方式是调用isNaN函数:'+isNaN(a)); //正确的方式是通过isNaN() 函数进行判断

</script>

 

tofixaed()返回一个数字的小数表达

 

<script>

function p(s){

  document.write(s);

  document.write("<br>");

}

var a = new Number("123");

p("数字对象123通过toFixed(2) 保留两位小数:"+a.toFixed(2)); //保留两位小数点

var b = new Number("3.1415926"); 

p("PI 通过toFixed(3) 保留三位小数:"+b.toFixed(3));//保留三位小数点

</script>

 

数字对象123通过toFixed(2) 保留两位小数:123.00
PI 通过toFixed(3) 保留三位小数:3.142

 

科学计数法表达:toExponential

<script>

function p(s){

  document.write(s);

  document.write("<br>");

}

var a = new Number("123");

p("数字对象123通过toExponential 返回计数法表达 "+a.toExponential ()); 

var b = new Number("3.1415926");

p("数字对象3.1415926通过toExponential 返回计数法表达 "+b.toExponential ());  

</script>

 

返回一个数字对象的基本数字类型

方法 valueOf() 返回一个基本类型的数字 
通过typeof 判断数据类型可以发现,一种是object,一种是number

<script>

function p(s){

  document.write(s);

  document.write("<br>");

}

var a = new Number("123"); 

var b = a.valueOf();

p('数字对象a的类型是: '+typeof a); //返回object

p('通过valueOf()返回的值的类型是'+typeof b); //返回number

</script>

 

JavaScript字符串

new string()创建字符串对象

<script>

var x = "5";

var y = new String(x);

document.write("变量x的值是:"+x);

document.write("<br>");

document.write("变量x的类型是:"+(typeof x));

document.write("<br>");

document.write("变量y的值是:"+y);

document.write("<br>");

document.write("变量y的类型是:"+(typeof y));

document.write("<br>");

</script>

 

返回指定位置的字符

charAt 返回指定位置的字符
charCodeAt 返回指定位置的字符对应的Unicode

<script> 

var y = new String("Hello JavaScript");

document.write("字符串y的值:"+y);

document.write("<br>");

document.write('通过 charAt(0)获取位置0的字符串: '+y.charAt(0)); //返回H

document.write("<br>");

document.write('通过 charCodeAt(0)获取位置0的字符的 Unicode '+y.charCodeAt(0)); //返回H对应的Unicode 72 

</script>

 

字符串拼接

concat()用于进行字符串拼接

<script>

var x = new String("Hello");

var y = new String("Javascript");

document.write( '字符串x的值: '+x);

document.write('<br>');

document.write( '字符串y的值: '+y);

document.write('<br>');

document.write( '通过函数concat()xy连接起来: ' +  x.concat(y) );

</script>

 

子字符串出现的位置

indexOf 返回子字符串第一次出现的位置 
lastIndexOf 返回子字符串最后一次出现的位置

<script>

var y = new String("Hello JavaScript");

document.write( '字符串y的值: '+y);

document.write('<br>');

document.write('通过 indexOf ("a")获取子字符"a" 第一次出现的位置 '+y.indexOf ("a"));

document.write('<br>');

document.write('通过 lastIndexOf ("a")获取子字符"a" 最后出现的位置 '+y.lastIndexOf ("a"));

</script>

 

比较两段字符串是否相同

localeCompare 比较两段字符串是否相同,0即表示相同,非0表示不同

<script>

var x = new String("Hello");

var y = new String("Hello");

var z = new String("aloha"); 

document.write( '字符串x的值: '+x);

document.write('<br>');

document.write( '字符串y的值: '+y);

document.write('<br>');

document.write( '字符串z的值: '+z);

document.write('<br>');

document.write('通过 localeCompare()判断 xy是否相等 '+x.localeCompare(y));

document.write('<br>');

document.write('通过 localeCompare()判断 xz是否相等 '+x.localeCompare(z));

document.write('<br>');

document.write('0 表示相等<br>');

document.write('1 表示字母顺序靠后<br>');

document.write('-1 表示字母顺序靠前<br>'); 

</script>

 

截取一段子字符串

substring 截取一段子字符串
注: 第二个参数,取不到

<script>

var x = new String("Hello JavaScript");

 document.write( '字符串x的值: '+x);

document.write('<br>');

document.write('x.substring (0,3) 获取位03的字符串: '+x.substring (0,3) );

document.write('<br>');

document.write('左闭右开,取得到0,取不到3');

</script>

 

根据分隔符,把字符串转换为数组

split 根据分隔符,把字符串转换为数组。
注: 第二个参数可选,表示返回数组的长度

<script>

var x = new String("Hello This Is JavaScript");

document.write( '字符串x的值: '+x);

document.write('<br>');

var y =  x.split(" ");

document.write('通过空格分隔split(" "),得到数组'+y);

document.write("<br>");

var z =  x.split(" ",2);

document.write('通过空格分隔split(" ",2),得到数组,并且只保留前两个'+z); 

</script>

 

替换子字符串

replace(search,replacement)
找到满足条件的子字符串search,替换为replacement

 

: 默认情况下只替换找到的第一个子字符串,如果要所有都替换,需要写成:

x.replace(/a/g, "o");

或者

var regS = new RegExp("a","g");

x.replace(regS, "o");

 

<script>

function p(s){

  document.write(s);

  document.write("<br>");

}

var x = new String("Hello JavaScript");

p('这个是原字符串: '+x);

var y = x.replace("a","o");

p('只替换第一个 a:  '+y);

var regS = new RegExp("a","g");

var z = x.replace(regS, "o");

p('替换掉所有的 a:  '+z);

</script>


Web文章检索

Web文章目录