使用不存在的对象属性,不会报错,undefined
动态的删减属性,通过delete
判断一个对象是否是这个对象自身拥有的 hasOwnProperty
forEach() 方法对数组的每个元素执行一次提供的函数。
var array = ['a', 'b', 'c'];
array.forEach(function(element) {
console.log(element);
});
const array1 = ['a', 'b', 'c'];
array1.forEach(element => console.log(element));
// expected output: "a"
// expected output: "b"
// expected output: "c"
for...in 语句用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)。
实例
如何使用 for...in 语句来遍历数组内的元素。
JavaScript for...in 语句
for...in 语句用于对数组或者对象的属性进行循环操作。
for ... in 循环中的代码每执行一次,就会对数组的元素或者对象的属性进行一次操作。
语法:
for
(变量in
对象) { 在此执行代码 }
“变量”用来指定变量,指定的变量可以是数组元素,也可以是对象的属性。
实例:
使用 for ... in 循环遍历数组。
<html>
<body>
<script type="text/javascript">
var x
var mycars = new Array()
mycars[0] = "Saab"
mycars[1] = "Volvo"
mycars[2] = "BMW"
for (x in mycars)
{
document.write(mycars[x] + "<br />")
}
</script>
</body>
</html>
Set 无序不重复的集合
3.Map实例的方法
clear() 删除所有的键值对;
delete(key) 删除指定键;
entries() 返回一个迭代器,迭代器按照对象的插入顺序返回[key,value];
forEach(callback,context) 循环执行函数并把键值对作为参数,context为执行函数的上下文this;
get(key) 返回Map对象key相对的value值;
has(key) 返回布尔值,判断Map对象是否存在指定的key;
keys() 返回一个迭代器,迭代器按照插入的顺序返回每一个key元素;
set(key,value) 给Map对象设置key/value键值对,返回这个Map对象(相对于JavaScript的Set,Set对象添加元素的方法叫add,而Map对象添加元素的方法为set)
iterator 和entireds()方法一样,返回一个迭代器,迭代器按照对象的插入顺序返回[key,value]
// 去除数组重复成员
function dedupe(array) {
return console.log(Array.from(new Set(array)));
}
dedupe([1,1,2,3]);
let set = new Set(['red', 'green', 'blue']);
// 返回键名
for(let item of set.keys()) {
console.log(item);
}
// 返回键值
for(let item of set.values()) {
console.log(item);
}
// set 键名=键值
// 返回键值对
for(let item of set.entries()){
console.log(item);
}
javascript手动抛出异常
If(typeof x !=number) {
throw 'not a number';}