JavaScript基础3
1. 内置对象
1.1 String
对象 | 用法 |
---|---|
charAt(idx) | 返回指定位置处的字符 |
indexOf(chr) | 返回指定子字符串的位置,从左到右。找不到返回-1 |
substr(m,n) | 返回给定字符串中从m位置开始,取n个字符,若n省略,则取到最后 |
substring(m,n) | 返回给定字符串中从m位置开始到n位置结束(不包括n),若n省略,则取到最后 |
toLowerCase() | 将字符串中的字符全部转换为小写 |
toUpperCase() | 将字符串中的字符全部转换为大写 |
length | 属性,不是方法,返回字符串的长度 |
1.2 Math
对象 | 用法 |
---|---|
Math.random() | 随机数 |
Math.ceil() | 向上取整 |
Math.floor() | 向下取整 |
1.2 Date
对象 | 用法 |
---|---|
getFullYear() | 年 |
getMonth() | 月 |
getDate() | 日 |
getHours() | 时 |
getMinutes() | 分 |
getSeconds() | 秒 |
注意:getMonth() 取到的值是0–11,所以取后值加1
对象 | 用法 |
---|---|
setYear() | 设置年 |
setMonth() | 设置月 |
setDate() | 设置日 |
setHours() | 设置时 |
setMinutes() | 设置分 |
setSeconds() | 设置秒 |
toLoacaleString() | 转换成本地时间字符串 |
2. 对象
2.1 对象的创建
JS 创建自定义对象,有三种方式:字面量形式创建对象、通过new Object 对象创建、通过Object对象的create方法创建对象。
1.字面量形式创建
var 对象名 = {}; // 空对象
var 对象名 = {
键:值,
键:值,
键:值,
...
}
2.new Object 对象创建
var 对象名 = new Object();
3.Object对象的create方法创建
var 对象名 = Object.create();
2.2 对象的序列化和反序列化
序列化,即将 JS 对象序列化为字符串;反序列化,即将字符串反序列化为 JS 对象。
// 序列化对象,将对象转为字符串、
JSON.stringify(object);
// 反序列化,将一个JSON字符串转为对象
JSON.parse(jsonStr);
2.3 this
1.直接调用函数,this代表的是全局的window对象
2.调用对象中的函数,this代表的是对象
3. JS 事件
3.1 几个名词
事件源:谁触发的事件?
事件名:触发了什么事件?
事件监听:谁管这个事情,谁监视?
事件处理:发生了怎么办?
3.2 几个常用事件
onload: 当页面或图像加载完成后立即触发
onblur: 元素失去焦点
onfocus: 元素获得焦点
onclick: 鼠标点击某个对象
onchange: 用户改变域的内容
onmouseover: 鼠标移动到某个元素
onmouseout: 鼠标从某个元素上离开
onkeyup: 某个键盘的键被松开
onkeydown: 某个键盘的键被按下
<body>
<button onclick="tap()">按钮</button>
<script>
function tap()
{
console.log("按钮被点击了");
}
</script>
</body>
详细事件请参看:[事件](HTML DOM 事件 (w3school.com.cn))
3.3 事件处理方式
1)HTML事件处理程序
<body>
<button onclick="tap()">按钮</button>
<script>
function tap()
{
console.log("按钮被点击了");
}
</script>
</body>
2)DOM 0级事件
<button id="bto">按钮</button>
var b = document.getElementById("bto");
b.onclick = function(){
console.log("该按钮被点击了");
}
不可以一个事件绑定多次
3)DOM 2级事件
<button id="bto1">按钮</button>
var c = document.getElementById("bto1");
c.addEventListener("click",function(){
console.log("dianji");
},false);
可以一个事件绑定多次
🐏:Lets go !