javascript
1. 全局变量
name='cloud';
局部变量
var name='cloud'
2. 类型转换
1 year="2017"; 2 // 转换为Int 3 i = parseInt(age); 4 // 转换为float 5 p = parseFloat(age);
数据类型
布尔
true/false
字符串
name='clsun'; "clsun" name.charAt(0) "c" name.substr(1,3) "lsu" name.length 5 name = name.concat('cloud') "clsuncloud" name.indexOf('un') 3 name.lastIndexOf('cl') 5 name.split('cl') (3) ["", "sun", "oud"] a =[1,2,3,4] (4) [1, 2, 3, 4] a.push[5] undefined a (4) [1, 2, 3, 4] a.push(5) 5 a (5) [1, 2, 3, 4, 5] a.pop() 5 a.unshift(0) 5 a (5) [0, 1, 2, 3, 4] a.shift() 0 a (4) [1, 2, 3, 4] a.splice(1,1,2.5) [2] a (4) [1, 2.5, 3, 4] a.splice(1,0,2.25) [] a (5) [1, 2.25, 2.5, 3, 4] a.splice(1,2) (2) [2.25, 2.5] a (3) [1, 3, 4] a.slice(0,2) (2) [1, 3] a (3) [1, 3, 4]
字典
a = {'key1':'value1','key2':'value2'}
数组
a=[1,2,3]
3. 循环
a = [1,2,3,4]
//循环时,得到的结果是索引
for(var item in a){
console.log(item);/a[item]
}
a = {'key1':'value1','key2':'value2'}
for(var item in a){
console.log(item); / a[item]
}
a = [1,2,3,4]
for(var i=0;i<a.length;i=i+1){
}
4. 条件
== 值相等
=== 值和类型都相等
&& and
|| or
if(condition){
}else if(condition){
}else{
}
5. 函数
function 函数名(a){
}
6. 定时器 间隔一段时间执行
function fun1() { console.log(1); } //// 定时器,弹窗 // setInterval('alert("warning");', 2000); setInterval('fun1();', 2000);
7.
通过id获取单个元素
document.getElementById('id')
通过tag获取多个元素(列表)
document.getElementsByTagName('div')
通过class获取多个元素(列表)
document.getElementsByClassName('c1')
父节点标签
parentElement
子节点标签
children
第一个子标签元素
firstElementChild
最后一个子标签元素
lastElementChild
上一个兄弟标签元素
previousElementSibling
下一个兄弟标签元素
nextElementtSibling
获取标签中的文本内容
innerText
获取标签中的class name
className
返回列表形式
classList
添加样式
tag.classList.add('name')
删除样式
tag.classList.remove('name')
8.
on click
点击执行函数
<div onclick='func();'>click</div>
9.
字符串和json转换
l = [1,2,3,4,5] (5) [1, 2, 3, 4, 5] s= JSON.stringify(l) "[1,2,3,4,5]" typeof(l) "object" typeof(s) "string" news = JSON.parse(s) (5) [1, 2, 3, 4, 5] typeof(news) "object"
10.
特殊字符转义
decodeURI( ) URl中未转义的字符
decodeURIComponent( ) URI组件中的未转义字符
encodeURI( ) URI中的转义字符
encodeURIComponent( ) 转义URI组件中的字符
escape( ) 对字符串转义
unescape( ) 给转义字符串解码
11.
eval
s='2*2'
val = eval(s)
12.
date
var d= new Date() undefined d Mon Dec 11 2017 16:25:00 GMT+0800 (China Standard Time) d d.getHours() 16 d.setHours(17) 1512984300651 d Mon Dec 11 2017 17:25:00 GMT+0800 (China Standard Time)
13.
函数的作用域
以函数为作用域
函数的作用域在函数未被调用之前,已经创建
函数存在作用域链, 在调用之前就被创建
14.面向对象
this代指对象(self)
创建对象时,使用new函数