码迷,mamicode.com
首页 > 其他好文 > 详细

杂七杂八知识点(易错)

时间:2017-06-12 23:55:34      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:运算符   object   property   font   fine   log   style   cti   nbsp   

1.查看对象所有属性:

  Object.keys(对象名);

var o = {
  key1: 1,
  key2: 2
};

Object.keys(o);
// [‘key1‘, ‘key2‘]

2.删除对象属性:

  delete o.p;返回值为布尔类型,删除成功后返回true;  

 

var o = {p: 1};
Object.keys(o) // ["p"]

delete o.p // true
o.p // undefined
Object.keys(o) // []

注意删除一个不存在的属性,delete不报错,而且返回true;

var o = {};
delete o.p // true

  delete命令只能删除对象本身的属性,无法删除继承的属性;

var o = {};
delete o.toString // true
o.toString // function toString() { [native code] }

  delete命令不能删除var命令声明的变量,只能用来删除属性。

var p = 1;
delete p // false
delete window.p // false

3.检查对象是否包含某个属性——in运算符

in运算符用于检查对象是否包含某个属性(注意,检查的是键名,不是键值),如果包含就返回true,否则返回false

in运算符,它不能识别对象继承的属性。

var o = { p: 1 };
‘p‘ in o // true
var o = new Object();
o.hasOwnProperty(‘toString‘) // false  说明toString是继承属性

‘toString‘ in o // true  in运算符不能识别,对继承的属性也返回true

 

杂七杂八知识点(易错)

标签:运算符   object   property   font   fine   log   style   cti   nbsp   

原文地址:http://www.cnblogs.com/krystalcl/p/6995339.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!