JavaScript是一种网页操作的脚本语言,弱数据类型语言。
作用:数据校验(由于带宽窄),网页特效,数据交互(ajax)
环境:开发环境:记事本 , 运行环境:浏览器 chrome
三种存放位置:
1.可以写在标签内部。<button onclick = "alert('123')"> 点一点,看一看 </button>
2.<script> alert("Hello World"); </script>
3.<script src = "js/index.js"></script>
alert是一个window对象的方法,alert方法存在一个参数,这个参数是一个字符串,作用是一个警告框。
确定框 comfirm
promt人机交互(主要用于测试代码)r
两个参数:第一个参数,提示用户,是字符串。第二参数,默认值,也是一个字符串。
parseInt 是将字符串转换为整型。 parseFloat 是将字符串转换为浮点型。如果首位就无法转换。则返回NaN(not a number)不是一个数字。
变量的初始化
1.先声明 (var 变量名称)后赋值(变量名称 = 变量值)
2. var 变量名称 = 变量值
JavaScript的数据类型分为两大类:
1.基本数据类型:数字(number)字符串(string)Boolean(布尔)null (空)NaN (不是一个数字)undefined(未定义)
2.引用数据类型:object
javascript的常见运算符:
1.算术运算符:+ - * /
2.逻辑运算符:&& || !
3.关系运算符:> >= < <= ==(只判断值) ===(值和类型都相等)
javascript的注释:1.单行注释 // 2. 多行注释 /* */ 3.文档注释 /*! .....*/
i++,++i, i - - , - - i
var a = 10;
var c = a++; //a =11,c=10
var d= ++c; //d = 11,c =11
自加运算,不管前加还是后加,对应变量本身就是加一运算,前加加优先级特别的高,后加加的优先级特别的底,自减类似。
三大流程:顺序(自左而右,自上而下的执行的)分支(选择)循环(for while)
单分支:if (){
}
分支: if(){
} else (){
}
多分支:if () {
} else if () {
}else if () {
} ..............{
} else (){
}
。。。。。。。。。。。。。。。。。。。。。。。。。
var week = prompt(“ ”);
switch (week){
case “1”
alert(“ ”);
break;
........................................
case“10”:
alert(“ ”);
break;
}
函数:function (有参数和无参数之分)
JavaScript中定义 一个字符串:
var str = "世界,你好"; alert(typeof str); 建议使用此方法
var str = new String("aaa"); alert(typeof(str));
var str = String("aaa"); alert(typeof str);
indexOf()返回在该字符串中的索引位置,如果不存在,则返回-1
var str1 = "今天天气很好,适合出去玩!";
console.info(str1.indexOf("好"));
console.info(str1.indexOf("很好"));
charAt()返回指定位置的字符,charCodeAt()返回指定位置字符的 ASCII值
console.info(str1.charAt(6));
console.info(str1.charCodeAt(6));
substr() 和substring() 如果只有一个参数,都表示从当前位置开始截取,截取到末尾;
substr() 两个参数,表示从第一个参数的位置开始截取,截取第二个参数代表的长度
console.info(str1.substr(2,5)); // 天气很好,
slice () 和 substring() 两个参数,表示从第一个参数的位置开始截取,截取第二个参数代表的位置
console.info(str1.substring(2,5)); // 天气很
split(" ") 返回数组形式,以空格分割 arr.join("|") 合并字符串
toLowerCse() 转换为小写 toUpperCase() 转换为大写
数学对象:
console.log(Math.PI) //π = 3.1415..........
console.log(Math.E) //以㏑e 的对数
console.log(Math.ceil(4.01)) //向上取整
console.log(Math.floor(4.999)) //向下取整
console.log(Math.sqrt(9)) //开平方
console.log(Math.pow(2,5)) //2的5次方,求幂数
console.log(Math.abs(-3)) //对-3取绝对值
console.log(Math.round(4.4)) //四舍五入 等于4
console.log(Math.round(4.5)) //四舍五入 等于5
console.log(Math.random()) //取随机数 范围在0到1之间
console.log(Math.floor(Math.random()*10)) // 取随机数 范围在0到10之间
日期模块:
function getTime() { // 定义一个方法
var myDate = new Date(); //获得当前的时间
var year = myDate.getFullYear(); //获得年
var month = myDate.getMonth()+1; //获得月
var day = myDate.getDate(); //获得日
...........week 周 hours 小时 mins 分 seconds 秒 ms 毫秒
setInterval(getTime,1); // 设定一秒之后显示内容
定时函数:setTimeout 和 setInterval
倒计时:
数组:即大量数据的集合。
var arr = [1,3,45,6,9,43];
for (var i =0; i < arr.length;i++) {
console.info(arr[ i ]);
} //通过循环遍历数组
arr[ 0 ] = 100; // 修改某个下标的元素内容
var arr = new Array(); //定义一个空的数组
arr.push(33); //在末尾增加一个元素 arr.unshift(66); //在首位增加一个元素
arr.pop(); //在末尾删除一个元素 arr.shift(); //在首位删除一个元素
sort方法排序使用的是ASCII值排序,所以数字排序需要注意
splice可以增加或者删除元素
var arr = [1,3,4,5,7];
arr.splice(2,2) // 从索引2开始删除2个元素,结果为[1,3,7]
alert(arr)
arr.splice(2,0,88); // 从索引2开始删除0个元素,在末尾再增加一个元素,结果为[1,3,7,88]
window浏览器:
history 历史记录 ,location路径,screen屏幕,navigator浏览器内核信息,document文档DOM
BOM(browser object model)浏览器对象模型 DOM(document object model)文档对象模型
moveByTest 相对于当前位置挪动浏览器, moveToTest 相对于左上角挪动浏览器,closed关闭,openNew打开
history历史:
history.back(); 和 history.go(-1); 都是返回上一页。history.forward(); 和 history.go(1);都是前进,下一页
screen屏幕:width 和height 是屏幕的分辨率大小,availWidth 和availHeight 是系统任务栏的大小
navigator浏览器内核信息 :platform 平台
location 位置
console.info(window.location.herf) //当前url地址
console.info(window.location.hostname) //主机名称
console.info(window.location.host) //主机名称+端口
console.info(window.location.port) //端口
console.info(window.location.protocol) //协议
console.info(window.location.search) //?后面的值
console.info(window.location.hash) //锚点后面的值