JavaScript:
简介:
JavaScript是一种具有面向对象能力的、解释型的程序设计语言。
JavaScript的组成:ECMAScript, DOM, BOM。
ECMAScript(基础语法):
JavaScript的核⼼语法ECMAScript描述了该语⾔的语法和基本对象
DOM(⽂档对象模型)
⽂档对象模型(DOM)—— 描述了处理⽹⻚内容的⽅法和接⼝
BOM(浏览器对象模型)
浏览器对象模型(BOM)—— 描述了与浏览器进⾏交互的⽅法和接⼝
基本用法:
行内js:
<button type="button" onclick="alert('hello,world')">按钮</button>
内部js:
<script type="text/javascript">
</script>
外部js文件:
<script type="text/javascript" src="js/test.js">
</script>
JavaScript基础语法:
变量:
直接用var修饰符进行声明。
变量提升:
JavaScript 引擎的⼯作⽅式是,先解析代码,获取所有被声明的变量,然后再⼀⾏⼀⾏地运⾏。
数据类型:
JavaScript 中有 6 种数据类型,其中有五种简单的数据类型:Undefined、Null、布尔、数值和字符串。⼀种复杂数据类型Object。
===:三等号先比较值,然后比较类型。
typeof()方法。
undefined:
undefined 是⼀个表示"⽆"的原始值,表示值不存在。
出现undefined的常⻅情况:
(1)当声明了⼀个变量⽽没有初始化时,这个变量的值就是 undefined.
(2)调⽤函数时,该函数有形参,但未提供实参,则该参数为 undefined。
(3)函数没有返回值时,默认返回 undefined。
null:
它表示空值,即该处的值现在为空,它表示⼀个空对象引⽤。
使⽤Null类型值时注意以下⼏点:
1)使⽤ typeof 操作符测试null返回object字符串。
2)undefined 派⽣⾃ null,所以等值⽐较返回值是true。未初始化的变量和赋值为null的变量相等。
函数转换:
parseInt();若第一个字符不为有效数字则返回NAN,
parseFloat();与parseInt相似,如果有两个小数点则第二个无非有效字符
toFixed():4舍5入
数组:
arr[“name”]=1234
相当于新增数组的属性name,值为1234。
初始化
1.隐式创建
var 数组名 = [值1,值3,值2];
2.直接实例化
var 数组名 = new Array(值1,值3,值2);
-
创建数组并指定长度
var 数组名 = new Array(size);方法:后追加,前追加,后删除,前删除。
数组遍历:
普通for循环, 打印非空数据和空数据
for…in,打印非空数据和属性
forEach,打印非空数据
函数:
函数的定义:
有三种函数定义的方式:函数声明语句、函数定义表达式、Function构造函数。函数没有重载,同名,后面的会把前面的覆盖。
函数声明语句:
function test(){
}
函数定义表达式:
var test1=function{
}
Function构造函数:
var test2=new Function('x','y','return x+y');
序列化和反序列化:
JSON.stringify(object);//序列化
JSON.parse(jsonstr);
this:
this是JavaScript语⾔的⼀个关键字。
它代表函数运⾏时,⾃动⽣成的⼀个内部对象,只能在函数内部使⽤。
随着函数使⽤场合的不同,this的值会发⽣变化。但是有⼀个总的原则,那就是this指的是,调⽤函数的那个对象。
Object对象的创建
var obj = new Object();
Object.create(null);
Object.create(obj);
对象的创建:
var obj={
'name':'hello',
age:12
}