JavaScript基础知识(2)
来源:互联网 发布:离线日语翻译软件 编辑:程序博客网 时间:2024/05/22 07:47
JavaScript中的对象:
var user={
name:'赵日天',
score:null,
age:100
}
使用{}声明,内部的变量使用属性:数值,每个变量使用,隔开,不是java中的;
注意:关于属性的命名:如果包含特殊字符则需要加上''包裹,如
var user={
'hello-worls':'hello',
name;'赵日天'
}
这里对于hello-world字段的访问,不能再使用、语法,而应该使用user['hello-world']来访问,对于name字段可以使用user.name也可以使用user['hello-world']
对于属性的增加删除:JavaScript是动态语言,所以可以在运行过程中对对象的属性进行动态的修改,例如:
var user={
name:'赵日天'
}
user.age;//添加了age属性
user.age=100;//对age属性进行了赋值
delete user['name'];//删除name属性
delete user.class;//删除一个不存在的属性也不会报错
检测该对象是否具有该属性:
var user={
name:'赵日天',
age:100
}
‘name’ in user;//判断name属性是否在user对象里面,该返回值是一布尔值,true和false
注意:该方法虽然可以判断该对象中是否具有该属性,但是如果该对象是继承自某个父类对象,那么父类对象具有的属性也会被当做是当前对象的属性。所以正确的判断方法应该是hasOwnProperty()方法。
var user={
name:'赵日天',
};
user.hasOwnProperty('name');//true
2.JavaScript中的条件判断
基本使用和java中的相同,if..else /if..else if....
JavaScript中把null、undefined、0、NaN和‘’视作false,其他的都为true,例子
var name='赵日天';
if(name){
//if (true)
}
3.JavaScript中的循环语句
(1).
java类似:
var totol=0;
var i;
for(i=1;i<100;i++){
totol=totol+i;
}
(2).遍历
第一种:
for..in
var array=['a','s','c'];
for(var a in array){
alert(a);//得到‘0’,‘1’,‘2’
alert(array[a]);//得到a/s/c
}
注意:这里的for in语句和java不同,java会直接获取里面的数值,但是这里获取到的是下标的string表示。
第二种:
var i;
for(i=0;i<arr.length;i++){
alert(arr[i]);
};
第三种:
for ....of-------该方法等价于java中的for...in 注意:该方法是ES6引入
var array=['a','s'];
for(var a of array){
alert(a);//返回'a'.'s'
}
第四种:
forEach();---------和java中的for--in等价。注意:该方法是ES5引入
var array=['a','s','d'];
array.forEach(function (element,index,array)){
//element---对应元素,index---下标,array---指定循环的是Array,Set写作set,Map写作map
alert(element);
}
3.JavaScript中的集合
JavaScript中的对象可以视作一个map,但是缺陷是对象的键只能是字符串。为了解决问题,最新的ES6引入了Map和Set。
(1).Map:
var map=new Map();
map.set('赵日天',100);
map.set('叶良辰',60);
map.has('王尼玛');//判断是否有该字段
map.get('赵日天');//获取该键对应的值
map.delete('叶良辰');//删除该键
(2)set:
var set=new Set();
set.delete(1);//删除
set.add(1);//添加
(3)关于map和set的遍历
参照for循环那里的forEach方法(forEachf方法是ES6引入,Map和Set也是ES6引入);
- Javascript基础知识(2)
- JavaScript基础知识(2)
- JavaScript基础知识(2)
- JavaScript基础知识(2)
- JavaScript入门基础知识总结(2)
- javascript的一些基础知识(2)
- JavaScript基础知识2
- javascript基础知识2
- #2javaScript基础知识
- JavaScript基础知识2
- javascript基础知识整理2
- JavaScript(一、基础知识)
- Javascript基础知识(1)
- javascript(js)基础知识
- Javascript-基础知识(1)
- Javascript-基础知识(3)
- Javascript-基础知识(4)
- Javascript-基础知识(5)
- Attempting to load the view of a view controller while it is deallocating is not allowed and may res
- error:no data exchange control with ID 0x03F7
- [简单易懂]VideoCacheView使用解析,强大的视频缓存类
- Oracle伪列Level的使用
- Android Studio添加日志过滤
- JavaScript基础知识(2)
- iOS 自动生成各种尺寸的App Icon 和 Launch Image( App Icon Gear)
- 本地连接属性被禁止访问(待解决)
- JavaScript学习总结(12)——2016 年 7 个顶级 JavaScript 框架
- 【转】斯坦福大学CS224d基础1:线性代数知识
- ORACLE大数据量下的分页解决方法
- npm查用指令
- ubuntu 安装和查看已安装
- Apache Tez:一个运行在YARN之上支持DAG作业的计算框架