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);