知识介绍:ECMAScript 5.1 (或仅 ES5) 是ECMAScript(基于JavaScript的规范)标准最新修正。 与HTML5规范进程本质类似,ES5通过对现有JavaScript方法添加语句和原生ECMAScript对象做合并实现标准化。ES5还引入了一个语法的严格变种,被称为”严格模式(strict mode)”。
ECMAScript
是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是European Computer Manufacturers Association)通过ECMA-262标准化的脚本程序设计语言。这种语言在万维网上应用广泛,它往往被称为JavaScript或JScript,所以它可以理解为是javascript的一个标准,但实际上后两者是ECMA-262标准的实现和扩展。
ES6是继ES5之后的一次主要改进,语言规范由ES5.1时代的245页扩充至600页。ES6增添了许多必要的特性,例如:模块和类,以及一些实用特性,例如Maps、Sets、Promises、生成器(Generators)等。尽管ES6做了大量的更新,但是它依旧完全向后兼容以前的版本,标准化委员会决定避免由不兼容版本语言导致的“web体验破碎”。结果是,所有老代码都可以正常运行,整个过渡也显得更为平滑,但随之而来的问题是,开发者们抱怨了多年的老问题依然存在。
1.在网页中嵌入脚本代码的方法
在html
中嵌入<script>...</script>
将外部script.js
文件链接到html
中<script src="xxx.js"></script>
2.注释
//单行注释
/**/多行注释
3.变量
声明变量:var 变量名1,变量名2...;
变量命名规范:字母、数字、下划线、$(不能以数字开头)
变量区分大小写
4.数据类型
Number(NaN)
String
Boolean
Array(是特殊结构的object)
Object
null
undefined:声明变量没有给值
判断变量的数据类型:typeof(变量名)
// 如看weight的值是什么类型
typeof(weight);`
将String
类型的值转换成整型用parseInt(变量名);
、将String
类型转换成浮点型用parseFloat(变量名);
5.文本字符串的处理[返回新的字符串,源字符串不变]
得到字符串的长度变量名.length
得到对应字符串中指定下标的字符变量名.charAt(int index);
得到字符串中第一个指定字符出现的索引变量名.indexOf(char c);
得到字符串中最后一个指定字符出现的索引变量名.lastIndexOf(char c);
截取字符串,获得(start,end)
的字符串内容变量名.substring(int start,int end);
替换字符串,将变量中的sourceContent
替换成replaceContent
内容变量 名.replace(String sourceContent,String replaceContent);
以指定字符串splitContent
切割字符串到数组中变量名.split(String splitContent);
6.Array
数组
定义数组:
var 数组=["...","..."]
var 数组=new Array();
数组[0]="...";数组[1]="...";
var 数组=new Array("...","...");
查看数组的类型typeof(数组名)
;值为object
数组动态扩容,可以使用数组名[下标]="..."
设置数组内容或改变数组内容
在数组最后添加值数组名.push("...")
在数组最前添加值数组名.unshift("...")
在数组最后删除值数组名.pop()
在数组最前删除值数组名.shift()
删除数组中指定元素delete 数组名[下标]
,不影响数组数量,对应内容变为undefined
删除数组中指定元素数组名.splice(下标)
,影响数组数量,直接在数组中删除
合并数组到新数组中var 新数组=数组1.concat(数组2)
7.流程控制
if…
if…else…
if…else if…else…
switch(…){case xxx:….;case yyy:…;….;default:…;}
while(判断条件){…}
do{…}while(判断条件);
for(var i=0;i<10;i++){…}
for(x in person){…}
若person
为对象(数组),x
为属性名
8.函数
定义:function
functionName(parameter1,parameter2...){...}
函数表达式var functionName = function(){...}
函数外声明的变量叫全局变量;函数内部定义的变量叫局部变量
9.Object
对象
定义对象:var 对象名 = {属性名:属性值,...};
添加/修改属性:对象名.属性名="..."或对象名["属性名"]="..."
删除属性:delete 对象名.属性名
添加/修改方法:对象名.方法名=function(){...}