一、index
- 单行注释 crtl+/
- ctrl+shift+/ 多行注释
- 1.如何在javascript中声明一个变量
- 特点:它是一种弱类型,声明变量的时候不用指明它的类型,赋值时候自动声明
- 2.typeof 判断一个变量的类型
<script>
var message;//定义了一个名为message的变量,像这样未经初始化的变量,回保存一个特殊的值undfined
var a = 10;
a = "heel world"
console.log(typeof a);
</script>
二、声明变量
<script>
/* 1.先声明变量,之后赋值 */
var a;
a = 10;
/* 2.声明变量同时进行赋值 */
var b = 10;
</script>
三、基本类型(number,string,boolean,undefined,null)
ECMAScript中有5种简单数据类型(也成为基本数据类型):Undefined、Null、Boolean、Number和String。还有一种复杂数据类型Object
- boolean只有两种值:true false
typeof 操作符去判断
<script> /* number,string,boolean,undefined,null */ var num = 10; var str = "hello world"; var b = true; /* boolean只有两种值:true false */ /* typeof 操作符去判断 */ console.log(typeof num) console.log(typeof str) console.log(typeof b) alert(null == undefined) //true </script>
四、引用类型( Array,Function,JSON Object)
Array.isArray() 判断一个对象是不是一个数组
- 读取数组的值 console.log(arr[0]) (数组的下标从0开始)
length属性可以获取数组的长度 console.log(arr.length)
<script> /* Array,Function,JSON Object */ /* 1.声明一个数组 */ var arr = [1,2,3,4]; /* 2.Array.isArray() 判断一个对象是不是一个数组 */ console.log(Array.isArray(arr)) /* 3.读取数组的值 */ console.log(arr[0]) console.log(arr[2]) /* 4.length属性可以获取数组的长度 */ console.log(arr.length) /* 5.获取数组的最后一位的值 */ console.log(arr[arr.length-1]) </script>
五、函数
是封装一个特定功能的代码块 函数不调用就不会执行
<script> /* 函数:是封装一个特定功能的代码块 函数不调用就不会执行 */ /* function go(x){ console.log(x) } go(10) */ /* Tip:不建议使用这种方式声明 */ var go =function(x){ console.log(x) } go(20) </script> </body>
<script>
/* window
在javescript 中声明的全局变量是window的属性
声明的方法是window的方法
*/
go(10)
/* Tip:推荐使用这种方式声明
好处:不用再注意位置关系了 */
function go(x){
console.log(x);
}
</script>
六、window
- 声明的全局变量时window的属性
全局变量:在函数外面定义的变量就叫全局变量
局部变量:函数里面使用var关键字定义的变量就叫局部变量
<script> var a = 10; console.log(window.a) </script>
七、全局变量,局部变量
局部变量在函数内部
<script> var a = 10; function go() { /* 局部变量 */ var b = 20; console.log(a); message = "hi"; //全局变量,省略var操作符,从而创建一个全局变量 } console.log(b); //错误!! console.log(a); go(); alert(message); //"hi" var m=12, found=false, age=22;//使用一条语句定义多个变量,用逗号分隔开即可。 </script>
八、对象
json对象 key,value的形式出现的
2.读取对象属性的值
console.log(yang.name)
Tip:如果属性名是变量的情况下,使用中括号去读
console.log(yang["name"])
<script> var yang = { name:"yanglirong", age:20, sex:"女" } /* 2.读取对象属性的值 */ console.log(yang.name) /* Tip:如果属性名是变量的情况下,使用中括号去读*/ console.log(yang["name"]) /* 3.给对象新添加一个属性 */ yang.love= "看电影" console.log(yang) /* 4.读取对象所有的属性 object.keys(obj) */ console.log(Object.keys(yang)) /* 5.读取所有对象的value的值 object.values(obj) */ console.log(Object.values(yang)) /* 6.for in */ for(var k in yang){ console.log(k) console.log(yang[k]) } </script>
九、for循环
<script>
/* 0-10 */
for(var i=0;i<=10;i++){
debugger
console.log(i)
}
</script>
十、严格模式
严格模式是为了Javascript定义了一种不同的解析与执行模型。要在整个脚本中启用严格模式,可以再顶部添加代码:”use strict”
在函数内部的上方包含这条编译提示,也可以指定函数在严格模式下执行
function doSomething(){
"use strict";
//函数体
}
支持严格模式的浏览器包括IE10+、Firefox 4+、Safari 5.1+、OPera 12+和Chrome