js是一种专门为网页交互设计的脚本语言。由三部分组成:
1.ECMAScript (ECMA-262定义), 提供核心语言功能
2.文档对象模型(DOM), 提供访问和操作网页内容的方法和接口
3.浏览器对象模型(BOM), 提供与浏览器交互的方法和接口
js脚本在HTML 中必须位于 <script> 与 </script> 标签之间。
脚本可被放置在 HTML 页面的 <body> 或 <head> 部分中。
例如:
<script>
alert("想要显示的内容");
</script>
引用已经写好的外部js文件:
<script src="*.js"></script>
JavaScript 是所有现代浏览器中的默认脚本语言。
HTML 4.01为<script>定义了6个属性(现在HTML5)
type -- 表示内容类型,默认为 text/javascript
src -- 源地址,可跨域
async -- 不保证按顺序执行
defer -- 立即下载,延迟执行,按顺序
charset -- 大多数浏览器忽略,很少用
language -- 已废弃
JavaScript 是一种弱类型的脚本语言,直接用var声明变量,变量名区分大小写。
通过实例了解 声明变量
var obj = {}; //对象
var arr = [1, 2, 3]; //数组
var date = new Date(); //当前日期
//alert(date);
var arr1 = new Array();
var arr2 = [1, 2, 'aa', new Date(), true];
//alert(arr1.length);
//alert(arr2);//会自动转换成string,效果等同于 arr2.toString()
添加和移除元素 从尾部:(push和pop)从头部:(shift和unshift)
var arr3 = [new Date(), false];
var res = arr3.push(1, 2, true); //push方法像数组中追加元素(返回值为新数组长度)
alert(arr3); //arr3中追加了1, 2, true三个元素 结果:new Date(), false,1, 2, true
alert(res); //返回的是新数组的长度 5
var res2 = arr3.pop(); //从数据尾部移除一个元素,返回值为移除的元素
arr3的结果:new Date(), false,1, 2
alert(arr3);
alert(res2); //返回值为移除的元素
从头部
var arr4 = [1, 2, true, new Date()];
var res4 = arr4.shift(); //从头部移除一个元素(返回移除的元素)
arr4结果:2, true, new Date()
var res5 = arr4.unshift(10, false); //从头部插入多个元素,返回新数组元素个数
arr4结果:10, false,1, 2, true, new Date()
alert(res5);
截取(splice和slice)
splice和slice(截取相关),返回删除的元素
splice方法操作数组本身
slice不操作数组本身
var arr5 = [1, 2, 3, 4, 5];
//splice(起始位置,截取的个数,第三个参数及以后表示:插入到截取位置的新元素)
var res6 = arr5.splice(1, 2, 3, 4, 5);移除2个元素(2,3)紧接着添加(3,4,5)最后的4,5不变
//alert(arr5); // 所以结果为1,3,4,5,4,5
//alert(res6); //返回删除的元素 2,3
var arr6 = [1, 2, 3, 4, 5];
var res7 = arr6.slice(2, 4); //左闭右开,语法arrayObject.slice(start,end)
//alert(arr6); //和原来一样不变
//alert(res7); //返回截取的元素 3,4(目的是取数3,4)
排序
sort正序排序
reverse 倒序排序(按照原来的顺序反转)
var arr9 = [1, 2, 4, 3, 5];
var arr10 = [1, 10, 2, 5, 3];
arr10.sort(); // 是按照字母来排序的 1,10,2,3,5(先比较第一位然后比较第二位这就是为什么10在2的前面,先比较的是‘10’中的‘1’)
arr9.reverse(); //5,3,4,2,1
ECMAScript5 新特性(indexOf 和lastIndexOf)
var arr = [1, 2, 3, 4, 2, 1];
//位置方法:indexOf lastIndexOf 一个参数,表示要搜寻的元素
var index=arr.indexOf(2);
//document.write(index);
//两个参数(要搜寻的元素,起始位置)
var index = arr.indexOf(2, 2);
document.write(index);
//lastIndexOf,用法完全一样,只不过从尾部向前搜
var index = arr.lastIndexOf(2, 4);
document.write(index);