javaScript是弱类型语言。
html和js有两种结合方式
<!--第一种-->
<script type="text/javascript" src="引用js文件">
</script>
<!--第二种-->
<<script type="text/javascript">
//js代码
</script>
js 定义一个变量用var,typeof(变量名)可以显示可以查看数据类型。
js变量声明和数据类型
1. String数据类型
2. number数据类型
3. boolean,布尔数据类型
4. null数据类型
5. undefined:表示定义了一个变量,但是没有赋值
js引用数据类型和类型转换
1. 引用对象
a. Object 对象:所有对象由这个对象继承而来
b. Boolean 对象:var b=new Boolean(true);
c. Number 对象: var num=new Number(123);
2. 数据类型转换 toString(), parseInt(), parseFloat();
3. 强制数据类型转换,
var x=Boolean("值");
var x=Number("值");
var x=String("值");
js里面的 while,for,if,switch语句都与java一样使用。
js里面的算数运算符和java一样,比如+ - * /
js里面的逻辑运算符和java也一样,比如 || && !
js不区分小数和整数,都可以用var表示
document.write();
可以在页面上输出
boolean类型的相加相减运算,boolean为 true是1,boolean为false是0
==比较的是值,===比较的是值和数据类型
js定义数组
var ar=[];
var ar=["aa",10,true];
var ar=new Array(3); //表示数组ar的长度为3 赋值: ar[0]="aa";ar[1]="bb";ar[3]="cc";
var ar=new Array(3,4,5); //表示数组ar的内容为 3,4,5
js的数组长度是可变的
var arr=new Array(3);
arr[0]="aa";
arr[1]="bb";
arr[5]="ww";
document.write("<hr/>");
document.write("arr: "+ arr);
//打印结果为 arr: aa,bb,,,,ww
fontsize()和fontcolor()可以定义字体的大小和颜色,link()可以将一个字符串设定为一个链接
var a="你好啊";
document.write(a);
document.write(a.fontsize(6));
document.write(a.fontcolor("#ff0000"));
document.write(a.link("http://www.baidu.com"));
charAt();返回字符串中指定的字符
concat();将两个字符串拼接
indexOf();检索字符串
var a="你好啊";
document.write(b.indexOf("很"));
//返回的位置为 1
split();将一个字符串分割为一个字符数组。
var a="你好啊,我的国";
a.substr(2,3); //结果:啊 表示截取第二和第三个位置中间的字符
a.substring(2,3); //结果:,我啊 表示从第二个位置,截取往后数三个的字符串
reverse();将数组从尾到头颠倒。
push();将两个数组拼接
var arr=[];
arr[0]="张三";
arr[1]="李四";
arr[2]="王五";
//document.write(arr.reverse());
var brr=[];
brr[0]="aa";brr[1]="bb";brr[2]="cc";
arr.push(brr);
document.write(arr);
//结果张三,李四,王五,aa,bb,cc
Math方法
Math.floor(); //对一个数向上舍入
Math.ceil(); //对一个数向下舍入
Math.round() //把一个数进行四舍五入
Math.random(); //获取随机数
Date 时间对象,可以获取年月日时分秒
getTime() 返回1970年1月1日至今的毫秒数
//例子
var mDate=new Date();
document.write(mDate.toLocaleString());
//toLocaleString(); 将时间转换为本地时间格式
//结果 :2018/3/27 上午11:44:04
RegExp 正则表达式的对象
js代码建议放在</body>
标签后面
js的bom对象
1. Navigator 获取一些浏览器的信息
2. Screen 获取屏幕信息
3. History 获取访问地址的历史信息
4. Location 设置URL,href 属性返回完整的URL
5. window 窗口对象 ,是顶层的对象,调用方法不需要写window
a. setInterval("alert('interval')",3000); //每隔三秒钟执行一次指定的js代码
//第一个参数,执行的js代码,第二个参数时间,毫秒
clearInterval(intervalId); //清除setInterval()的定时器,根据其返回的id来清除
b. setTimeout("alert('setTimeout')",3000); //三秒钟后执行指定的js代码
//第一个参数,执行的js代码,第二个参数时间,毫秒
clearTimeout();同样可以清除timeOut的定时器
js全局变量:在一个script标签内定义一个变量,在本标签的方法内可以使用,在其他script标签内也可以使用,例如
<body>
<script type="text/javascript">
var a=10;
alert("本标签内:"+a);
function show(){
alert("在局部方法内:"+a);
}
show();
</script>
</body>
<script type="text/javascript">
alert("在其他标签内:"+a);
</script>
js局部变量:在方法内定义一个变量,只能在本方法内使用本变量。
浏览器按F12可以点击控制台信息,然后可以查看前端报错的信息。
js全局函数:不需要任何方法调用,直接调用就可以
1. eval();可以直接将字符串当js来调用
<script type="text/javascript">
var a="alert('123456')"; //a只是一个字符串
eval(a);
</script>
- isNaN(); 检索一个字符串是否为数字,如果是数字为false,如果不是数字为true;
- parseInt(); 将字符串转化成整数
- encodeURI(); 将字符串编码成url
- decodeURI(); 将url解码成字符串