JS代码嵌套在HTML文件件里的位置有两种:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>intro to JS</title>
<!-- 内嵌JS代码 -->
<script type="text/javascript">
console.log('Robin');
alert('Robin2');
</script>
</head>
<body>
<!-- 外部引入 -->
<script type="text/javascript" src="js文件相对路径">
</script>
</body>
</html>
字符转义: var $robin="my\'name "; 这样可以输入单引号而不受影响
Javascript基本数据类型: Number、String、Boolean
如:var sex=true;
JS中有两个特殊数据类型:undefined 、null
当我们使用一个变量,而该变量尚未被赋值时,或读取一个不存在的对象属性时,就会返回undefined
null用于表示值确实已经定义,但这个值不属于任何一种合法的类型
如:
var robin;
console.log(robin); //undefined
var mike=null;
console.log(mike); //null
JS注释方法:
单行注释: //
多行注释: /* */
JS中的对象:
JS中的对象是根据某种引用类型创建出来的实例
引用类型:引用类型是一种数据结构,用于将数据和功能组织在一起
比如,现实生活中对某种事物的定义
人:姓名、年龄、性别、身高、智商、思维
常用的引用类型:
1)object引用类型:
创建Object引用类型的具体实例(对象):
方法1:
<script type="text/javascript">
var robin=new Object(); //创建一个object引用类型的对象
robin.name="Fang";
robin.age=24;
robin.sex=true;
robin.info="He is a student";
alert(robin.name);
</script>
方法2:
<script type="text/javascript">
var mike={
name:'麦克',
sex:false,
age:18
};
// alert(mike.name);
//迭代(访问)对象所有属性: for...in语句,后面不需要加分号
for(var i in mike){
alert(mike[i]);
}
</script>
2)Function引用类型,使用Function引用类型的对象我们也称为函数
创建函数:
function 函数名() {
各种javascript语句;
}
浏览器加载script元素后,就会立即逐条执行js语句,我们可以将一些语句封装在一个函数内,
浏览器在遇到调用这个函数的语句之前不会执行被封装的代码
<script type="text/javascript">
/* 创建Function引用类型的对象,定义函数,
这种方式定义函数后面不需要加分号 */
function robin(){
//放各种JS语句
alert("我是函数robin"); //内部语句不调用这个函数不显示
}
robin();
</script>
其他创建此函数的方法:
var 函数名=function(){
各种javascript语句;
}
<script type="text/javascript">
//这种方法后面需要加分号
var mike=function(){
console.log('您调用了mike');
};
mike();
</script>
函数可以有参数:
可以在调用函数的时候顺便传参数给函数,以实现更多的功能
<script type="text/javascript">
//函数定义时圆括号里面的参数我们称为"形式参数"
//参数可以有默认值
function mike(a,b=100,c=1000){
//本函数内部就可以使用传进来的参数
console.log(a);
console.log(b);
console.log("我是mike");
}
//调用函数的时候可以传数据给函数
mike(10); //10传给a
</script>
函数可以有返回值:
即将一个值返回到调用它的地方
<script type="text/javascript">
//函数执行完会返回调用它的地方,继续执行
function robin(){
alert(1);
return 100; //函数内部可以返回数据给调用它的地方,函数内部return后面的语句不会再执行
}
alert(robin()); //这边调用完之后从这行继续往下执行
</script>
function add(a,b){
return a+b;
}
add(1,2);
全局变量:
<!-- 内嵌JS代码 -->
<script type="text/javascript">
var a=100; //在函数外定义的变量称为全局变量
function add(a,b){
return a+b;
}
alert(a);
</script>
</head>
<body>
<script type="text/javascript">
alert(a);
</script>
</body>
注意:
<script type="text/javascript">
//注意:当函数外定义的变量名和函数参数名重名时,默认用传递的值
var a=100;
function add(a,b){
alert(a);
return a+b;
}
add(1,1); //1
</script>
<script type="text/javascript">
var test=100;
function add(a,b){
alert(test);
return a+b;
}
add(1,1);
</script>
局部变量:
<script type="text/javascript">
var test=100;
function add(a,b){ //形式参数也只能在本函数内部使用,默认也是局部变量
var test1="我是test1"; //局部变量只能在本函数内部使用
return a+b;
}
add(1,1);
</script>
function func1() {
}
//Function have default properties: length, which is the nums of formal parameter
alert(func1.length);