创建变量
var a=10
输出方式
alert(a) //弹出对话框显示
console.log(a) //后台显示
document.write(a) // 页面显示
数据类型
1.数值类型
var a1 = 10
var a2 = -100
var a3 = 100.23
var a4 = -100.23
var a5 = 2e5 //表示2乘以10的5次方
var a6 = 0x100 //十六进制
var a7 = 0o100 //八进制
var a8 = 0b100 //二进制
2.字符串类型
//字符串类型不区分单引号和双引号
//引号均为英文状态
var s1 = '学习T'
var s2 = "跟着" + s1 + "!"
alert(s1)
alert(s2)
3.布尔类型
var a1 = true //真
var a2 = false //假
4.空类型
var k1 = null //null:表示有值,有一个空值
var k2 //undefined:表示没有值
检查数据类型
var result = typeof k2 //利用typeof方法把k2的类型赋值给result
console.log(result)
数据类型转换
//转数值
var a1 = '100.23'
var a2 = Number(a1) //a1为合法数值时转换为数值内容 ,非数值时转换为NaN
var a3 = parseInt(a1) //只能转换整数部分
var a4 = parseFloat(a1) //规则同上,能转换小数部分
//转字符串
var b = true
var b1 = String(b)
var b2 = b.toString()
//转布尔
var s1 = 'abc'
console.log(s1)
console.log(typeof s1)
var s2 = Boolean(s1)
console.log(s2)
console.log(typeof s2)
//转换为false的内容为:0 NaN '' undefined null
选择语句
//if三种形式
if(){}
if(){} else{}
if(){} elseif(){} else{}
//switch
switch(){
case 1: break//case 选择 break跳出
case 2: break
default://最后执行
}
循环语句
var a = 1
//while循环
while (a < 10) {
alert(a)
a++
}
//for循环
for (var i = 0; i < 10; i++) {
console.log(i)
}
函数(提升代码的复用性)
//定义函数a(形参){函数体}
function a() {
for (var i = 0; i < 10; i++) {
console.log(i)
}
}
//调用函数 a(实参)
a()
递归函数
//递归函数 调用自身,并设置一个结束条件
function a(n) {
if (n == 1 || n == 2) return 1;
return a(n - 1) + a(n - 2)
}
alert(a(10))
做用域
//全局作用域 全部可用
//私有作用域 函数可用
var q1 = 1 // 全局作用域
function a() {
var q = 2 //私有作用域
}
对象
//空对象
var obj = {}
console.log(obj)
//增加成员
obj.name = '张三'
obj.age = 20
console.log(obj)
//删出成员
delete obj.name
console.log(obj)
//修改成员
obj.age = 18
console.log(obj)
//查询成员
obj['age']
console.log(obj['age'])
数组
//数组
var arr = [100, 200, 300, 400]
console.log(arr[2])
选择排序
//选择排序
var arr = [5, 4, 3, 9, 1, 8, 7, 6]
for (var j = 0; j < arr.length - 1; j++) {
var min = j
for (var i = j + 1; i < arr.length; i++) {
if (arr[i] < arr[min]) {
min = i
}
}
var temp = arr[j]
arr[j] = arr[min]
arr[min] = temp
}
console.log(arr)
数组常用方法
//数组常用方法
var arr = [100, 200, 300,400,500,600]
console.log(arr)
//push将数据追加到数组末尾,返回长度
var pus = arr.push('追加')
console.log(arr)
console.log(pus)
//删除最后一个数,并返回删除的值
var pop1 = arr.pop()
console.log(arr)
console.log(pop1)
//unshift()在数组最前面添加数据,返回长度
var uns = arr.unshift('第一')
console.log(arr)
console.log(uns)
//shift() 删除最前面的一个数据,返回值为被删除的数据
var shi = arr.shift()
console.log(arr)
console.log(shi)
//reverse() 反转数组 ,返回被反转后的数组
var rev = arr.reverse()
console.log(arr)
console.log(rev)
//数组.splicce(开始索引,多少个,要插入的数据) 删除数组中的数据,并选择要不要 插入 新的数据
//返回:以新数组的形式返回被删除的数据
var spl = arr.splice()//不变
console.log(spl)
var spl1 = arr.splice(2,1) //在第二索引处删除一个数据,不插入
console.log(spl1)
var spl2 = arr.splice(2,1,'spl加的') //在第二索引处删除一个数据,插入9
console.log(spl2)
console.log(arr)
//sort() 1, 数组.sort() 2,数组.sort(function(a,b){return a-b})
//3,数组.sort(function(a,b){return b-a})
var a = [5,4,9,1,6,7,6,1,9]
console.log(a)
var b1 = a.sort()
console.log(b1)
var b2 = a.sort(function(a,b){return a-b})
console.log(b2)
var b3 = a.sort(function(a,b){return b-a})
console.log(b3)
//join('连接符') 返回连接好了的字符串
console.log(a.join('-'))
//concat() 数组.concat(其他数组) 将其他数组拼接在一起
var b = [100,200,300]
var c = a.concat(b)
console.log(c)