学习网址:
【优极限】 HTML+CSS+JavaScript+jQuery前端必学教程,小白教学,前端基础全套完成版_哔哩哔哩_bilibili
三、基础语法
10.内置对象
名称 | 属性 |
---|---|
Arguments | 只在函数内部定义,保存了函数的实参 |
Array | 数组对象 |
Date | 日期对象,用来创建和获取日期 |
Nath | 数学对象 |
String | 字符串对象,提供对字符串的一系列操作 |
(1)String
charAt(idx) | 返回指定位置处的字符 |
indexOf(Chr) | 返回指定字符串的位置,从左到右。找不到返回-1 |
substr(m,n) | 返回给定字符串中从m位置开始,取n个字符;若n省略,则意味着取到最后一位 |
substring(m,n) | 返回给定字符串中从m位置开始,到n位置结束;若n省略,则意味着取到最后一位 |
toLowerCase() | 将字符串的字符全部转化成小写 |
toUpperCase() | 将字符串的字符全部转化成大写 |
length | 属性,不是方法,返回字符串的长度 |
<script type="text/javascript">
var str = "Hello World!";
console.log(str.substring(3));
console.log(str.substring(3,5));
console.log(str.length);
console.log(str.toUpperCase());
console.log(str.toLowerCase());
console.log(str.substr(1,6));
console.log(str.substr(1));
console.log(str.charAt(3));
</script>
(2)Math
Math.random() | 随机数 |
Math.floor() | 向下取整,小于最小整数 |
Math.ceil() | 向上去正,大于最大整数 |
<script type="text/javascript">
console.log(Math.ceil(1.2));
console.log(Math.random());
console.log(Math.floor(1.2));
</script>
(3) Date
<script type="text/javascript">
var date = new Date();//直接获取时间
console.log(date);
console.log(date.getFullYear());//年
console.log(date.getMonth()+1);//月
console.log(date.getDay());//日
console.log(date.getHours());//时
console.log(date.getMinutes());//分
console.log(date.getSeconds());//秒
</script>
11. 对象
{
键1:值1;
键2:值2;
········
}
(1)对象的创建
- 字面量形式创建对象
<script type="text/javascript">
var obj1 = {};
var obj2 = {
name:"zhangsan",
age:18,
};
console.log("obj3:"+obj1);
console.log("obj2:"+obj2);
</script>
- 通过 newObject 创建
<script type="text/javascript">
var obj3 = new Object();
console.log(obj3);
var obj4 = Object.create(null);
</script>
- 通过 Object 对象的 create 方法创建
<script type="text/javascript">
var obj4 = Object.create(null);
console.log(obj4);
var obj5 = Object.create(obj2);
console.log(obj5);
</script>
(2)对象的操作
- 获取对象的属性
<script type="text/javascript">
var obj2 = {
name:"zhangsan",
age:18,
};
console.log(obj2.name);//zhangsan
console.log(obj1.name);//undefined
console.log(obj3.name);//undefined
console.log(obj4.name);//undefined
console.log(obj5.name);//zhangsan
</script>
- 设置对象的属性
<script type="text/javascript">
var obj2 = {
name:"zhangsan",
age:18,
};
obj2.age = 20;
obj2.tel = "10088";
console.log(obj2);
</script>
- 对象的序列化和反序列化
- 序列化:将JS对象转换成JOSN字符串
- 序列化:将JOSN字符串转换成JS对象
<script type="text/javascript">
var objx = {
name:"zhangsan",
age:18,
tel:"10088",
};
var objstr = '{"name":"zhangsan","age":18,"tel":"10088"}';
console.log(objx);
console.log(objstr);
var objxToStr = JSON.stringify(objx);//对象转化为字符串
console.log(objxToStr);
console.log("-----");
var strToobj = JSON.parse(objstr);//字符串转化为对象
console.log(strToobj);
</script>
(3)this
this 是 JavaScript 语言的一个关键字。
谁调用函数,this指代谁。
- 直接调用函数,this代表全局的window对象
<script type="text/javascript">
function test(){
console.log("这是一个测试方法");
console.log(this);//window对象
}
test();
</script>
- 调用对象中的函数,this代表的是对象本身
<script type="text/javascript">
var o = {
name:"zhangsan",
age:18,
tel:"10088",
SayHello:function(){
console.log("你好呀~");
console.log(this);//当前o对象
},
};
o.SayHello();
</script>