JavaScript基础知识(2)
2016-12-07 10:52
141 查看
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引入);
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基础知识
- JavaScript基础知识
- JavaScript基础知识(六)
- JavaScript基础知识
- JavaScript基础知识(二)
- javascript基础知识
- JavaScript基础知识(四)
- JavaScript基础知识(三)
- javascript 常用基础知识
- JavaScript(一、基础知识)
- javascript学习中的一些心得(基础知识,高手免进)
- JavaScript基础知识总结
- JavaScript基础知识(五)
- JavaScript基础知识
- javascript基础知识
- javascript基础知识
- 从零开始javascript(1):js基础知识
- 关于javascript的基础知识
- JavaScript基础知识
- Javascript&DHTML基础知识第1/2页