`
yidongkaifa
  • 浏览: 4092383 次
文章分类
社区版块
存档分类
最新评论

delete在js里为引用删除

 
阅读更多
delete 运算符
从对象中删除一个属性,或从数组中删除一个元素。

delete expression
expression 参数是一个有效的 JScript 表达式,通常是一个属性名或数组元素。

说明
如果 expression 的结果是一个对象,且在 expression 中指定的属性存在,而该对象又不允许它被删除,则返回 false。
在所有其他情况下,返回 true。

example:
var arr = [1,2,3];
var arrItem = arr[1];
var obj = {a:'a', b:'b'};
var objItem = obj.a;

delete arr[1];
alert(arrItem);//这里输出2
alert(arr[1]);//这里输出undefined
alert(arr.length);//这里输出3

delete obj.a;
alert(objItem);//这里输出a

//说明:可见,delete删除的仅仅是数组或对象中对其成员的引用
//特别需要注意的是,数组delete后length仍然不变

var objKeys = [];
for(var k in obj)objKeys.push(k);
alert(objKeys);//这里输出b
//说明:delete删除对象成员后,无法被遍历
分享到:
评论

相关推荐

    Javascript delete 引用类型对象

    很少使用javascript的delete,最近因为一个小bug发现删除引用类型对象的时候有一点不同

    js 采用delete实现继承示例代码

    代码如下: //采用对象冒充的方式实现js继承 function A(color) { this.Acolor = color; this.AshowColor = function() { ... //然后删除对A的引用,这样以后不能调用他 delete this.newMethod; this.Bname = name

    Javascript学习笔记 delete运算符

    //此处o.a是对象o的属性a的引用 只有在with语句里才能使用单独的属性名 代码如下: with(o){ delete a; } 二、delete的返回值 delete是普通运算符,会返回true或false。规则为:当被delete的对象的属性存在并且不能...

    JavaScript避开内存泄露及内存管理技巧_.docx

    在JavaScript中,delete一个对象的属性时,对象不会被立即释放,而是变慢了15倍的内存。这是因为JavaScript的垃圾回收机制无法及时释放对象的属性。 2. 闭包中的内存泄露 在闭包中引入闭包外部的变量时,当闭包...

    javascript学习笔记.docx

    delete可以删除一个属性,它不会影响到属性关联的对象的生存,若该属性不存在会返回true;[]可以以字符串的方式存取对象的属性。 6) typeof函数的返回值:数字——number,字符串——string,布尔值——Boolean,...

    107个常用javascript语句

    49.引用一个文件式的JS:<script type="text/javascript" src="aaa.js"> 50.指定在不支持脚本的浏览器显示的HTML:<noscript></noscript> 51.当超链和onCLICK事件都有时,则老版本的浏览器转向a.html,否则转向b.html.例...

    IE8兼容性和判断IE浏览器版本

    此外,IE8不支持rem单位,解决办法是使用rem.js库,在页面中引用rem.js文件,需要引用在页脚,也就是末尾,在所有css文件引用和DOM元素之后。 再次,IE8不支持css3的background-size的cover和contain属性,解决办法...

    精通javascript

    • 1.3.js 1.3.htm使用的外部JavaScript文件 第2章(\第2章) • 2.1.htm Infinity应用 • 2.2.htm NaN与isNaN()的用法 • 2.3.htm Infinity值的用法 • 2.4.htm 转义字符的使用 ...

    2017年4月自考互联网软件应用与开发00898试卷及答案解释完整版.pdf

    DELETE语句用于删除表中的所有记录或部分记录。 网络安全 使用 SSL加密方式访问端口为444的 Web网站,正确的链接写法是https://Ha.com:444。 HTML HTML(HyperText Markup Language)是一种用于描述网页的...

    详解JavaScript中操作符和表达式

    delete 操作符用于删除对象的某个属性;如果没有指向这个属性的引用,那它最终会被释放 语法:delete expression delete 操作符会从某个对象上移除指定属性。成功删除的时候回返回 true,否则返回 false let ...

    javascript文档

    delete 运算符 删除对象的属性,或删除数组中的一个元素。 description 属性 返回或设置关于指定错误的描述字符串。 Dictionary 对象 存储数据键、项目对的对象。 dimensions 方法 返回 VBArray 的维数。 除法...

    JavaScript中常用的运算符小结

    一、一元运算符 1、delete 运算符:删除对以前定义的对象属性或方法的引用。例如: var o=new Object; o.name=”superman”; alert(o.name); //输出 “superman” delete o.name; alert(o.name); //...

    《javaScrip开发技术大全》源代码

    • sample01.htm 将JavaScript代码插入在标签与标签之间 • sample02.htm 将JavaScript代码放在了标签与标签之间 • sample03.htm JavaScript与HTML混合执行 • sample04.htm 在同...

    微软JavaScript手册

    delete 运算符 删除对象的属性,或删除数组中的一个元素。 description 属性 返回或设置关于指定错误的描述字符串。 Dictionary 对象 存储数据键、项目对的对象。 dimensions 方法 返回 VBArray 的维数。 除法...

    精通JavaScript

    • 1.3.js 1.3.htm使用的外部JavaScript文件 第2章(\第2章) • 2.1.htm Infinity应用 • 2.2.htm NaN与isNaN()的用法 • 2.3.htm Infinity值的用法 • 2.4.htm 转义字符的使用 ...

    JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)

    1、delete:删除对以前定义的对象属性或方法的引用,但此运算符不能删除开发者未定义的属性和方法。示例: 代码如下: var o=new Object; o.name=”Nicholas”; o.show=function(){ return “test”; }; console.log...

    JAVA中常用类的常用方法.docx

    3. delete(int start, int end) 方法:可以删除从 start 开始到 end-1 为止的一段字符序列,返回修改后的该 StringBuffer 对象引用。 4. deleteCharAt(int index) 方法:移除此序列指定位置的 char。 5. reverse...

    AJAX基础概念、核心技术与典型案例(内涵动态实例)

    /js/all.js JavaScript脚本文件 /images 图片文件 第24章(/ch24) 程序描述:本章将使用Ajax技术实现无刷新即可浏览RSS的阅读器。添加一个RSS地址时,自动保存到数据库。打开阅读RSS时,自动获取...

    浅说js变量

    并且 var 声明的变量, 不能使用 delete 操作符删除; 重复声明为产生覆盖, 不会造成错误; 遗漏声明, 则会把变量隐式声明此变量, 并做为全局变量; (下节介绍) */ /* 3, 变量作用域: 以函数划分: 函数内部声明的变量...

    Employee-Tracker-MySQL-HW12:该解决方案是一个界面,使非开发人员可以轻松查看和与数据库中存储的信息进行交互。 这些接口通常称为** C ** ** M **管理** S **系统

    员工追踪器-MySQL-HW12 该解决方案是一个界面,使非开发人员... 要回答有关“ ON DELETE CASCADE”功能的上述问题,它允许您删除亲本关键记录(当面)及其对应的子记录(在爱好中),而不必先删除所有子记录。 为了明

Global site tag (gtag.js) - Google Analytics