JavaScrip笔记
数据类型转换
1、转换成数值类型
隐式转换:在数据运算过程中,系统自动把不同数据类型转换成相同类型进行运算。
//字符串转数字,输出结果为100
alert('101'-1);
2、显式转化
1)parseInt()只能将数字字符串类型转化成整数,其他类型转化都将得到NaN
parseInt的转化过程是,从第一个字符开始,依次进行判断,如果发现字符不是一个数字字符,将停止转化(parseInt(‘123a4’)转化结果为123)
2) parseFloat()将浮点数字符串转化成浮点数(parseFloat(‘1.12’));
3)+/-符号可以很容易的将字符串类型转换为数值类型。
3、转化成字符串类型
使用连接符号"+" alert('ylem'+null+undefined+123+ture) 输出ylemnullundefinde123true;
javaScrip中的运算符
1、运算符[]
获取对象的属性,或者数组的元素
2、运算符instanceof
用于判断一个对象是否为另一个类的实例
3、运算符typeof
typeof为类型检查运算符,用于查看值的数据类型
4、运算符new
new为对象构造运算符。用于构造一个新的对象实例
5、运算符void
alert(void parseInt('12a3'));
结果为undefined,因为void消除了返回值;
6、运算符delete
delete用来删除对象的属性或者数组中的元素。
7、运算符in
in运算符用来验证一个对象是否包含某属性 'a' in obj 验证对象obj是否拥有属性a
循环语句
for...in只能用于对象,可以通过循环把对象所有的属性显示出来
不过使用频率很低,效率也不高,所以除非必要,否则最好不使用for...in
label循环
语法:label:
...
break label;
实现循环条到指定的地方。
with语句
——简化代码的编写
with(boject){
语句
}
//不使用with
alert(Mat.pow(Math.abs(-2),2)); //使用with语句 with(Math){ alert(pow(albs(-2),2)); }
JavaScrip的数组
1)ECMAScript中的数组可以存放任何类型的数据
var a = [1,'2',true];
2) 赋值给一个不存在的索引值,会自动扩展数组。
函数的参数
注意:1)ECMAScript中参数的声明不需要关键字var
function sub(a,b){}
2)即使函数声明了参数,调用时也可以不传递参数;
3)调用函数时可以传递若干个参数给函数
function args() { var result = ''; for(var i=0;i<arguments.length;i++){ result += arguments[i] + ','; } alert(‘调用者传递了’ + arguments.length + '个参数,分别是' + reuslt); } args(2,3,4,5,6,7,8);
在函数被调用时,一个arguments对象就会被创建,每个函数都有自己的arguments对象,负责管理它所在函数的参数以及其他一些属性¥
4)内部函数和匿名函数
函数也是一种数据类型,成为function类型
可以赋值给变量
var func = function(){
alert('这是一个匿名函数');
}
func();
可以被当做函数的返回值返回
var func = function(){
return function(){
alert('这是一个内部匿名函数');
}
}
func()();
(function(){alert('创建后直接运行')})()