js课程 2-6 js如何进行类型转换及js运算符有哪些
一、总结
一句话总结:
1、所有类型->布尔类型(为假的情况)有哪些(6种)?
1)字符串('')
2)整型(0)
3)浮点型(0.0)
4)null
5)NaN
6)undefined
2、所有类型如何转布尔类型?
类构造函数
1)v='';
b=Boolean(v);
2)v='';
b=!!v;
3、js中字符串如何转整型?
parseInt()和Number(),推荐前者
1)str='10px';
num=parseInt(str);
4、js中整型如何转字符串?
String()方法和+运算符
1)num=10;
str=String(num);
2)num=10;
str=num+'';
5、js中json字符串如何转json对象?
用eval执行字符串中的表达式,加圆括号变成表达式
注意加括号
v="{'username':'user1','age':'20'}";
obj=eval('('+v+')');
alert(obj);
6、js中的delete运算符是干嘛的?
删除变量的
只能删全局变量,不能删局部变量
delete运算符:(不能删除局部变量)
v='abc';
alert(v);
7、js中in运算符的作用是什么?
判断一个元素是否在一个集合或者对象中
1.arr=['a','b','c'];
alert(2 in arr);
2.obj={'username':'user1','age':'20'};
alert('username' in obj);
8、js中的for-in循环是怎么回事?
和foreach很像,i就相当于$key,obj[i]就相当于$val
for-in循环遍历:
obj={'username':'user1','age':'20','sex':'nv'};
for(i in obj){
document.write('<h1>'+i+'->'+obj[i]+'</h1>');
}
二、js如何进行类型转换及js运算符有哪些
1、相关知识
变量类型测试:
1.typeof();
2.arr instanceof Array;
typeof()可判断的类型:
1.string
2.number
3.boolean
4.obejct
5.undefined
#一定要注意js中所有变量都是对象
arr instanceof Array可以测试数组类型:
js中前面的对象不用写的两种情况:
1.Global对象(js内部对象)
• typeof();
• parseInt();
• parseFloat();
• eval();
• Number();
• String();
• Boolean();
2.window对象(浏览器提供对象)
• alert();
变量类型转换:
1.整型->字符串
1)num=10;
str=String(num);
2)num=10;
str=num+'';
2.字符串->整型
1)str='10px';
num=parseInt(str);
3.所有类型->布尔类型
1)v='';
b=Boolean(v);
2)v='';
b=!!v;
4.所有类型->布尔类型(为假的情况)
1)字符串('')
2)整型(0)
3)浮点型(0.0)
4)null
5)NaN
6)undefined
5.json字符串转json对象
v="{'username':'user1','age':'20'}";
obj=eval('('+v+')');
alert(obj);
变量运算符:
1.+-*/%
2.in
3.instanceof
4.delete
delete运算符:(不能删除局部变量)
v='abc';
alert(v);
in运算符:
1.arr=['a','b','c'];
alert(2 in arr);
2.obj={'username':'user1','age':'20'};
alert('username' in obj);
js语法:
1.ifElse语句
2.switch语句
3.while循环
4.for循环
5.forIn遍历
if-elseif-else特点:
1.条件必须成立
2.只能命中其一
3.从上往下执行,从左往右执行
switch语句:
week=5;
switch(week){
case 1:
alert('周一');
break;
case 2:
alert('周二');
break;
default:
alert('周日');
break;
}
while循环:
i=0;
while(i<3){
document.write('<h1>'+i+'</h1>');
i++;
}
for循环:
for(i=0;i<3;i++){
document.write('<h1>'+i+'</h1>');
}
for-in循环遍历:
obj={'username':'user1','age':'20','sex':'nv'};
for(i in obj){
document.write('<h1>'+i+'->'+obj[i]+'</h1>');
}
九九乘法表实例:
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
实现代码:
for(i=1;i<=2;i++){
document.write('<h3>');
for(j=1;j<=i;j++){
document.write('<span>'+j+'x'+i+'='+(j*i)+'</span> ');
}
document.write('</h3>');
}
函数:
function out(n){
for(i=1;i<=n;i++){
document.write('<h3>');
for(j=1;j<=i;j++){
document.write('<span>'+j+'x'+i+'='+(j*i)+'</span> ');
}
document.write('</h3>');
}
document.write('<hr>');
}
out(3);
默认参数:
function out(n=9,k=1){
for(i=1;i<=n;i++){
document.write('<h3>');
for(j=1;j<=i;j++){
document.write('<span>'+j+'x'+i+'='+(j*i)+'</span> ');
}
document.write('</h3>');
}
for(j=0;j<k;j++){
document.write('<hr>');
}
}
out(3);
消息框:
1.警告框
alert(123);
2.确认框
confirm('您确认删除吗?');
3.提示框
prompt('请输入图片的名字:');
1.arr=['a','b','c'];
alert(2 in arr);
2.obj={'username':'user1','age':'20'};
alert('username' in obj);