JavaScript复习(3)

字典(Array对象)

  1. Array对象当字典使用时,.length属性就不能使用了

  2. 如果想访问对象元素,不能使用索引,只能使用key

  3. 如果遍历字典,只能使用for……in语句

字典是另一种可变容器模型,且可存储任意类型对象
  1. 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号, 分割,整个字典包括在花括号 {} 中

  2. 键一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一

  3. 值可以取任何数据类型,但键必须是不可变的,如字符串、元组

  • 一般创建字典及遍历
var arr = new Array();
arr["001"] = "牛一";
arr["002"] = "王二";
arr["003"] = "张三";
arr["004"] = "李四";
for(var key in arr){
    console.log(key + ":" + arr[key]);
}
  • 快速创建字典及遍历
var arr = {"name":"牛一","number":"123456","age":"20","address":"16号楼520"};
//键值对:key:value
for(var key in arr){
    console.log(key + ":" + arr[key]);
}
//console.log(arr.key);通过属性来访问对应的值

Json对象

1.Json对象是一种数据组织格式,是以键值对为集合的形式来存储数据的一种方式

2.JSON 数据格式为 键/值 对,就像 JavaScript 对象属性,键/值对包括字段名称(在双引号中),后面一个冒号,然后是值

3.JSON 值可以是:

  • 数字(整数或浮点数)

  • 字符串(在双引号中

  • 逻辑值(true 或 false)

  • 数组[在中括号中]

  • 对象{在大括号中}

  • null

4.JSON 使用 JavaScript 语法

//遍历Json对象
var stuArr = [
    {"name":"张三","address":"郑州人","age":"20"},
    {"name":"李四","address":"上海人","age":"21"},
    {"name":"王五","address":"北京人","age":"19"},
    {"name":"赵六","address":"四川人","age":"20"}
];
for (let i = 0; i < stuArr.length; i++) {
    console.log("name:" + stuArr[i].name);
    console.log("address:" + stuArr[i].address);
    console.log("age:" + stuArr[i].age);
}

JavaScript的拓展函数

1.使用prototype(原型对象)为已经存在的对象添加新的属性或方法。

//输出表情符号
String.prototype.mood = function(mind){
    if(!mind){
        mind = "^";
    }
    return mind + "_" + mind;
}
var name = "_";
console.log(name.mood("♡"));

2.使用prototype(原型对象)为自定义的对象添加新的属性或方法。

//输出一个人的全名
function Person(surname,name){
    this.surname = surname;
    this.name = name;
}

Person.prototype.Fullname = function(){
    return this.surname + this.name;
};
var people = new Person("西门","吹雪");
console.log(people.Fullname());

通常将拓展函数编写成一个外部文件,使用时导入。

全局变量与局部变量

局部变量

定义:变量在函数内声明

作用域:局部作用域。

生存周期:局部变量在函数执行完毕后销毁。

全局变量

定义:变量在函数外定义或者变量在函数内没有声明(没有使用 var 关键字),即为全局变量。

作用域:全局变量有全局作用域,网页中所有脚本和函数均可使用。

生存周期:全局变量在页面关闭后销毁。

猜你喜欢

转载自www.cnblogs.com/discourage/p/11530571.html
今日推荐