(续一)javaScript笔记(3)

来源:互联网 发布:免费网络验证 编辑:程序博客网 时间:2024/04/29 23:23
3、字符串转换成数字
首先,几个比较巧妙地方法
一、
当字符串用于数字环境中是,他会自动地转换成数字;
例如:var product = "12" * "3";//result is the number 36
同样,把字符串减0也可以转换成数字;例如:
<script>
var string = "123";
result = string - 0;
document.write("the type of "+result+" is "+typeof(result));
</script>
结果显示:
二、第二种方法就是比较直接的方法——Number()函数
<script>
var string = "123";
result = Number(string);
document.write("Method Number() : the type of "+result+" is"+typeof(result));
</script>
结果显示:
三、最后是两个转换数字的函数:parseInt()和parseFloat();
跟对象一样,数组直接量中的元素也可以是任意表达式:
var temp = 24;
var new_arr = [temp,temp+2,temp-1];
数组直接量还可以存放未定义元素
var t_arr = [1,2,,,4,,3];
<script>
var str1 = "123.23";
var str2 = "2334dsf";
var str3 = "okpkl";
var str4 = "0x4f";
result1 = parseInt(str1);
result2 = parseInt(str2);
result3 = parseInt(str3);
result4 = parseFloat(str1);
result5 = parseInt(str4);
document.write("parseInt(str1)="+result1+"<br>");
document.write("parseInt(str2)="+result2+"<br>");
document.write("parseInt(str3)="+result3+"<br>");
document.write("parseFloat(str1)="+result4+"<br>");
document.write("parseInt(str4)="+result5+"<br>");//parseInt()函数会把以0x开头的字符串自动解释//成16进制并转换成十进制结果返回
</script>
结果显示:

parseInt(str2)=2334
parseInt(str3)=NaN
parseFloat(str1)=123.23
parseInt(str4)79
parseInt(str1)=123
parseInt(str2)=2334
parseInt(str3)=NaN
parseFloat(str1)=123.23
parseInt(str4)=79
此外,parseInt()还有一个可选参数,接受此参数来作为基数转换成十进制数;
<script>
document.write(parseInt("11",2));
document.write("<br>");
document.write(parseInt("FF",16));
document.write("<br>");
document.write(parseInt("573",8));
document.write("<br>");
document.write(parseInt("124",10));
</script>
结果显示:

255
379
124 3
255
379
124

4、布尔类型
布尔类型两个值:true、false
经常用,很熟悉,不多说了,值得一提的是,布尔类型也有显示转换Boolean()函数,用法跟其他的显示转换函数相同,还有一个方法是使用布尔非运算符两次:var bool_t = !!x;
5、函数
定义方式:
function fnName(){
//方法体
}
javaScript的一个重要特性就是其函数也是数据类型,javaScript代码可以对函数进行操作,这就意味着函数可以被存储在变量、数组和对象中,同时函数还可以作为参数传递给其他函数(其他语言没见过,比较新鲜,呵呵)。当一个函数被赋给一个对象时,它常被作为该对象的方法来引用(OO啊),具体面向对象中详细学习。
ECMAScript v3还定义了函数直接量的语法。比如,一个square()函数:
用函数定义的方式就是:function square(x) { return x*x; }
而用函数直接量来定义的方式是:var square =function(x) { return x*x;}//用这种方法据说在高级脚//本中非常方便、有用,期待中:>
6、对象
书上定义:对象是已命名的数据的集合。相信熟悉java、C++的人都不陌生对象的概念。javaScript中访问对象属性的方法: image.width    document.myform.button
同样,访问对象函数的方式,用常见的一个作为例子:document.write("very familiar!");
javaScript对象同样可以作为关联数组(后面有详细的学习)使用,用他们可以访问对象属性,比如
image["width"]
创建对象
var o = new Object();
然后可以用访问属性的方法使用。
o.x = 2.5;
o.y = 3;
同样,javaScript中定义了对象直接量的语法,上面的例子可以写成:
var o = {x:2.5 , y:3 };
对象直接量可以嵌套,而且其属性不必是常量,可以是任意javaScript表达式:
var square = { "upperLeft":{x:o.x , y:o.y } , "lowerRight"{x:(o.x +temp),y:(o.y + temp) }};
7、数组
数组没什么说的,这里提一提常规数组跟关联数组的区别。常规数组是以非负整数作为下标,而关联数组是以字符创作为下标。
还需要注意的有,javaScript不支持多维数组,但是她的数组元素还可以是数组,而且数组元素不必具有相同的类型。
数组的创建:
var a = new Array();
a[0]=1;
a[1]="a";
a[2]=true;
a[3]={x:1 ,y:2};
初始化方式也可以写成:
var a = new Array(1,"a,",true,{x:1 ,y:2});
如果只是向数组传递一个参数,那么这个数值就是数组的长度。
var b = new Array(12);//长度为12的b数组
同样,数组也有直接量的语法,上面实例用数组直接量定义为:
var a = [1,"a,",true,{x:1 ,y:2}];
数组直接量也可以被嵌套:
var b = [[1,2,3],[4,5,6],[7,8,9]];
跟对象相同,数组直接变量的元素也可以是任意表达式:
var temp = 12;
var new_arr = [temp,temp+2,temp-1];
数组直接量中还可以存放未定义元素:
var t_arr = [1,2,,,3];
0 0
原创粉丝点击