1 js的引入
2 js注释
3 js变量
4 js数据类型及转换
5 js运算符
6 js流程控制
7 函数
8 面向对象
9 模块(Math,Date,json)
10 正则表达式
1 js的引入
内接式
<script type="text/javascript">
</script>
外接式
<script type="text/javascript" src="./file.js"></script>
2 js注释
//单行
/*
多行
*/
3 js变量
var a;
a = 10;
var b = 5;console.log(a); //控制台显示
alert(b); //弹出框显示
4 js数据类型及转换
数字 number (Math方法)
布尔 boolean
空对象 null
未定义 undefined var a;
number to string
//隐式转换
var a = 123;
var b = "123";
var c = a+b; //"123123"
//显式转换
var d = String(a);
var e = a.toString();
console.log(a, b, c, d, e);
string to number
var str = '789.123wadjhkd';
var num2 = Number(str);
console.log(num2); //NaN Not a Number 但是一个number类型// parseInt()可以解析一个字符串 并且返回一个整数
console.log(parseInt(str)); //789
console.log(parseFloat(str)); //789.123
5 运算符
6 流程控制
顺式
分支
if else
switch case(数字,字符串) default(break,continue)
循环
while do while(别忘了i++)
for(i=0; i<10; i++)
7 函数
一般函数
function add(x, y)
{
return x+y;
}console.log(add(3,5));
匿名函数
var suu = function(x,y){
return x-y;
}console.log(suu(3,7));
8 面向对象
//1 用object或自面量创建
var person = new Object();
console.log(typeof person); //Object
//赋值
person.name = 'alex';
person.age = 20;
var person2 = {
name:'usir',
age:20,
fav:function(){
console.log(this.name); //this类似python的self
}
}//2 工厂方式创建
function createPerson(name, age){
var o = new Object();
o.name = name;
o.age = age;return o;
}var person1 = createPerson("alex", 20);
//instanceof检测
console.log(person1 instanceof Object); //true//3 构造函数创建,细分类
/*
构造函数可以创建对象(new),首字母大写(与欧通函数区分);*/
function Person(name, age){
this.name = name;
this.age = age;
this.alertname = function(){
console.log(this.name);
}
}function Fruit(name, age){
this.name = name;
this.age = age;
this.alertname = function(){
console.log(this.name);
}
}var p1 = new Person('alex', 20);
var f1 = new Fruit("apple", 1);
console.log(p1 instanceof Person); //true
console.log(f1 instanceof Fruit); //true//4 原型模式创建
function Person(name, age){ //1 构建原型 function
this.name = name;
this.age = age;
}Person.prototype.alertName = function{ //2 从原型父类(Person.prototype)继承方法
alert(this.name);
}var p1 = new Person("alex", 20); //3 创建对象 new
var p2 = new Person("alex", 29);
9 模块
Date模块
var mydate = new Date();
console.log(mydate.getDate());console.log(mydate.toLocaleString()); //返回本地时间
json模块
//json轻量级的数据交换格式 对象,数组
var per = {"name":"alex", "age":20};
var ppp = [{"name":"alex", "age":20}, {"name":"sam", "age":33}];
//序列化 stringify
var jsonstr =JSON.stringify(per);
console.log(typeof jsonstr);
//反序列化 parse
var jsonObject= JSON.parse(jsonstr);
console.log(typeof jsonObject);
//遍历
for(var key in per){
console.log(key+":"+per[key]);
}
for(var i in ppp){
console.log(ppp[i].name+":"+ppp[i].age);
}