语法
delete UnaryExpression
UnaryExpression 一元运算符,通常是一个属性名或数组元素
返回结果:
如果 UnaryExpression 的结果是一个对象,且在 UnaryExpression 中指定的属性存在,而该对象又不允许它被删除,则返回 false。在所有其他情况下,返回 true。
删除对象属性
var obj = {};
obj.name = 'testname';
alert(obj.name);//testname
delete obj.name;
alert(obj.name);//undefined
删除数组元素
var arr=[12,23,5,3,25,98,76,54,56,76];
alert(arr.length);//10
delete arr[0];
alert(arr[0]);//undefined
alert(arr.length);//10
注意:下标为0的元素12被删除了,但是数组第一个元素并没有变为23,数组的长度还是10,而不是9
为了方便,数组的元素删除还是绕道:arr.splice(0,1);吧,此处只演示delete
使用delete需要注意的知识点
不能删除 var 申明的变量
var param="nodelete";
delete param; //false
alert(param); // "nodelete" 说明param没有被删除
处理方法:
eval("var param='nodelete'");//使用eval声明 var变量
alert(window.param);// "nodelete"
delete param; //false
alert(window.param); // undefined 说明已删除
不能删除函数
function testFun(){}
delete testFun; //true
alert(testFun);//function testFun(){} 说明没有删除
处理方法:同上使用eval即可
不能删除继承自原型的成员
function Obj(){};
Obj.prototype.name="obj";
var o=new Obj();
o.name="obj_1"
alert(o.name);//"obj_1"
delete o.name;//ture
alert(o.name);//"obj"
处理方法:
delete o.prototype.name;
ie下不能删除宿主对象下的变量
window.param="windowparam";
delete param; //抛出异常
alert(param);
处理方法:
with(window){param="windowparam"};
delete param;
alert(window.param);//undefined
分享到:
相关推荐
### JavaScript关键字、保留字及其属性详解 #### 一、JavaScript 关键字与保留字 JavaScript是一种广泛使用的脚本语言,用于网页开发以及其他多种用途。它包含了一系列的关键字和保留字,这些词在语言中具有特殊的...
JavaScript 的保留字包括:abstract、boolean、break、byte、case、catch、char、class、const、continue、debugger、default、delete、do、double、else、enum、export、extends、false、final、finally、float、...
在示例代码中,尝试使用了JavaScript的关键字delete作为函数名。在JavaScript中,delete是一个关键字,用来删除对象的属性,因此不能用作函数名或其他标识符。当页面加载时,浏览器尝试执行onclick事件中的delete...
在JavaScript中,`delete`是一个运算符,它用于删除对象的属性。然而,并非所有对象属性都可以被`delete`运算符删除。本文将详细介绍`delete`运算符的工作原理,以及它和JavaScript中属性的内部属性之间的关系。 ...
### JavaScript中的关键字 JavaScript是一种广泛使用的编程语言,用于为网页添加交互性。它拥有大量预定义的关键字,这些关键字在语言中有特殊的含义,并且不能用作变量名或函数名等标识符。理解这些关键字对于编写...
在ActionScript中,`delete`关键字用于删除对象属性或数组元素,但不能直接删除变量。让我们深入探讨`delete`关键字的使用及其在ActionScript中的工作原理。 首先,`delete`操作符可以用来删除对象的属性。当你创建...
JavaScript 和 VBScript,虽然都是常用的脚本语言,但它们的关键字和保留字有所不同。 JavaScript 关键字: 1. `break`:用于跳出循环(如`for`,`while`)或者`switch`语句。 2. `case`:`switch`语句的一部分,...
删除JSON对象的属性,可以使用 `delete` 关键字: ```javascript delete user.hobbies; // 删除hobbies属性 console.log(user); // 输出:{name: "张三", age: 26} ``` 然而,删除数组中的元素则需要使用 `splice...
JavaScript 保留关键字是编程语言中预定义的词汇,它们具有特殊含义,不能被用作变量名、函数名或任何标识符。这是因为这些关键字已经被JavaScript引擎内部使用,用于控制程序的结构和行为。以下是一些主要的...
JavaScript 保留关键字(keyword) Javascript 的保留关键字(标识符)不可以用作变量、标签或者函数名。有些保留关键字是作为 Javascript 以后扩展使用。 abstract arguments boolean break byte case catch ...
在JavaScript编程中,关键字"in"是一个非常有用的工具,它可以用来判断某个属性是否存在于一个对象中,无论是该对象的直接属性还是通过原型链继承的属性。在本文中,我们将详细解析关键字"in"的使用方法。 首先,...
在JavaScript中,关键字和保留字均属于语言保留词汇,因此它们不能被用作变量名、函数名或其他任何标识符。 2. JavaScript中的关键字: 根据ECMA-262标准,JavaScript中的关键字可用于执行控制语句的开始或结束、...
JavaScript关键字包括 `break`、`case`、`catch`、`continue`、`default`、`delete`、`do`、`else`、`finally`、`for`、`function`、`get`、`if`、`in`、`instanceof`、`new`、`return`、`switch`、`this`、`throw`...
JavaScript 关键字允许执行 JavaScript 代码,如 `Execute JavaScript`,这对于那些不能直接通过 Selenium API 处理的交互很有帮助。例如,可以使用它来触发某些事件,修改 DOM 元素,或者执行页面上的异步操作。 ...
在JavaScript编程语言中,关键字和保留字是具有特殊含义的词汇,它们被JavaScript引擎用于解析和执行代码。了解并熟悉这些关键字和保留字对于编写有效的、无错误的JavaScript代码至关重要。以下是对这些概念的详细...
但在ECMAScript5之前的版本中,使用关键字作为属性名(如`delete`)会导致`SyntaxError`,这是因为JavaScript解析器将关键字误识别为其自身的语义作用,而非属性名称。 《JavaScript的秘密花园》不仅是一份详尽的...
6. **JavaScript关键字** 包括break、delete、function、return、typeof等,这些关键字在控制流程、函数定义、类型检查等方面起到关键作用。 7. **JavaScript常量** - 整型常量可以以八进制、十进制、十六进制...
### JavaScript保留字与关键字详解 #### 一、前言 在JavaScript编程语言中,有一些预定义的词被称为关键字(Keywords)或保留字(Reserved Words)。这些词汇被语言本身赋予了特殊的意义,不能作为变量名或其他...