JavaScript是一种弱类型语言。
定义变量:var a=3;
注:var a=b=3;这里a是该处的变量,b是上面某处定义的变量。
例:var a,b;
(function(){
alert(a);
alert(b);
var a=b=3;
alert(a);
alert(b);
})();
alert(a);
alert(b);
运行代码:undefined,undenfined,3,3,undefined,3
JavaScript的获取元素的方式和css的一样
例:var oDiv = document.getElementById(‘div1‘); 选择id为div1的标签
JS操作元素属性
属性写法
1、html的属性和js里面属性写法一样
2、“class” 属性写成 “className”
3、“style” 属性里面的属性,有横杠的改成驼峰式,比如:“font-size”,改成”style.fontSize”
通过" . "操作:
<script type="text/javascript">
window.onload = function(){
var oInput = document.getElementById(‘input1‘);
var oA = document.getElementById(‘link1‘);
// 读取属性值
var val = oInput.value;
var typ = oInput.type;
var nam = oInput.name;
var links = oA.href;
// 写(设置)属性
oA.style.color = ‘red‘;
oA.style.fontSize = val;
}
</script>
通过“[]”操作:当要操作的属性用变量表示时使用
<script type="text/javascript">
window.onload = function(){
var oInput1 = document.getElementById(‘input1‘);
var oInput2 = document.getElementById(‘input2‘);
var oA = document.getElementById(‘link1‘);
// 读取属性
var val1 = oInput1.value;
var val2 = oInput2.value;
// 写(设置)属性
// oA.style.val1 = val2; 没反应
oA.style[val1] = val2;
}
</script>
数组及操作方法;
定义数组;
//对象的实例创建
var aList = new Array(1,2,3);
//直接创建
var aList2 = [1,2,3,‘as‘];
//多维数组
var aLiat = [[1,2,3],[‘as‘,‘b‘,‘d‘];
数组的方法:
1.数组的长度:aList.length
2.取某个数据: aList[0]
3.拼接字符串:aList.join(‘-‘);通过-拼接
4.push()和pop()从数组最后增加或删除成员
5.unshift()和 shift() 从数组前面增加成员或删除成员
6.reverse() 将数组反转
7.indexOf() 返回数组中元素第一次出现的索引值
var aList = [1,2,3,4,1,3,4]; alert(aList.indexOf(1));
8.splice()在数组中增加或删除成员
var aList = [1,2,3,4]; aList.splice(2,1,7,8,9);
//从第2个元素开始,删除1个元素,然后在此位置增加‘7,8,9‘三个元素 alert(aList); //弹出 1,2,7,8,9,4
字符串处理方法:
1、字符串合并操作:“ + ”
2、parseInt() 将数字字符串转化为整数
3、parseFloat() 将数字字符串转化为小数
4、split() 把一个字符串分隔成字符串组成的数组
5、charAt() 获取字符串中的某一个字符
6、indexOf() 查找字符串是否含有某字符
7、substring() 截取字符串 用法: substring(start,end)(不包括end)
8、toUpperCase() 字符串转大写
9、toLowerCase() 字符串转小写
字符串反转
var str = ‘asdfj12jlsdkf098‘; var str2 = str.split(‘‘).reverse().join(‘‘); alert(str2);
定时器在JavaScript中的作用:
1.制作动画
2.异步操作
3.函数缓冲与节流
/*
定时器:
setTimeout 只执行一次的定时器
clearTimeout 关闭只执行一次的定时器
setInterval 反复执行的定时器
clearInterval 关闭反复执行的定时器
*/
var time1 = setTimeout(myalert,2000);
var time2 = setInterval(myalert,2000);
/*
clearTimeout(time1);
clearInterval(time2);
*/
function myalert(){
alert(‘ok!‘);
}
闭包
什么是闭包:函数嵌套函数,内部函数可以引用外部函数的参数和变量,参数和变量不会被垃圾回收机制收回
用处:
1、将一个变量长期驻扎在内存当中,可用于循环中存索引值
2、私有变量计数器,外部无法访问,避免全局变量的污染
内置对象
1、document
document.referrer //获取上一个跳转页面的地址(需要服务器环境)
2、location
window.location.href //获取或者重定url地址
window.location.search //获取地址参数部分
window.location.hash //获取页面锚点或者叫哈希值
3、Math
Math.random 获取0-1的随机数
Math.floor 向下取整
Math.ceil 向上取整
面向过程与面向对象的区别
面向过程与面向对象的区别
面向过程:所有工作现写现用
面向对象:是一种编程思想,功能事先编写好,只需在使用时关注功能的运用。