JS的 delete操作符 删除对象属性
JS如何删除对象中的某一属性
- var obj={
- name: 'zhagnsan',
- age: 19
- }
- delete obj.name //true
- typeof obj.name //undefined
- 通过delete操作符, 可以实现对对象属性的删除操作, 返回值是布尔
- 如果你试图删除的属性不存在,那么delete将不会起任何作用,但仍会返回true
- 如果对象的原型链上有一个与待删除属性同名的属性,那么删除属性之后,对象会使用原型链上的那个属性(也就是说,delete操作只会在自身的属性上起作用)
- 当一个属性被设置为不可设置,delete操作将不会有任何效果,并且会返回false。
其他场景
1.变量
- var name ='zs' //已声明的变量
- delete name //false
- console.log(typeof name) //String
- age = 19 //未声明的变量
- delete age //true
- typeof age //undefined
- this.val = 'fds' //window下的变量
- delete this.val //true
- console.log(typeof this.val) //undefined
已声明的变量不可删除, 未声明的变量可以删除
2.函数
- var fn = function(){} //已声明的函数
- delete fn //false
- console.log(typeof fn) //function
- fn = function(){} //未声明的函数
- delete fn //true
- console.log(typeof fn) //undefined
3.数组
- var arr = ['1','2','3'] ///已声明的数组
- delete arr //false
- console.log(typeof arr) //object
- arr = ['1','2','3'] //未声明的数组
- delete arr //true
- console.log(typeof arr) //undefined
- var arr = ['1','2','3'] //已声明的数组
- delete arr[1] //true
- console.log(arr) //['1','empty','3']
4.对象
- var person = {
- height: 180,
- long: 180,
- weight: 180,
- hobby: {
- ball: 'good',
- music: 'nice'
- }
- }
- delete person ///false
- console.log(typeof person) //object
- var person = {
- height: 180,
- long: 180,
- weight: 180,
- hobby: {
- ball: 'good',
- music: 'nice'
- }
- }
- delete person.hobby ///true
- console.log(typeof person.hobby) //undefined
已声明的对象不可删除, 对象中的对象属性可以删除
JS的 delete操作符 删除对象属性的更多相关文章
- JS delete 用法(删除对象属性及变量)
1,对象属性删除 function fun(){ this.name = 'mm'; } var obj = new fun(); console.log(obj.name);//mm delete ...
- js delete可以删除对象属性及变量
,对象属性删除 function fun(){ this.name = 'mm'; } var obj = new fun(); console.log(obj.name);//mm delete o ...
- js delete删除对象属性,delete删除不了变量及原型链中的变量
js delete删除对象属性,delete删除不了变量及原型链中的变量 一.delete删除对象属性 function fun(){ this.name = 'gg'; } var obj = ne ...
- JS中delete删除对象属性
1.删除对象属性 function fun(){ this.name = 'mm'; } var obj = new fun(); console.log(obj.name);//mm ...
- JavaScript 删除某个数组中指定的对象和删除对象属性
Javascript: 删除指定对象:使用过程中只适合删除对象,如果数组中添加的是类型Function的话是删除不了的. function removeObjWithArr(_arr,_obj) { ...
- js中彻底删除对象属性
delete运算符可以删除对象的属性,但是仅仅是断开了属性和宿主对象的联系,而不会去操作被删除属性的属性值,所以就需要彻底删除的出现 function myDelete(obj,propertyNam ...
- delete 删除对象属性
删除属性要直接删.
- JS删除对象属性
项目中有些属性使用之后需要重置 var user = {}; user.name = "123"; user.age="30"; console.log(use ...
- JS 删除对象属性
updateNode: function(data) { if(data) { this.root[data.id] = data; } }, removeNodes: function(idsArr ...
随机推荐
- 前端知识点回顾之重点篇——ES6的Iterator和Generator
Iterator 迭代器是一种接口.是一种机制. 为各种不同的数据结构提供统一的访问机制.任何数据结构只要部署 Iterator 接口,就可以完成遍历操作(即依次处理该数据结构的所有成员). Iter ...
- 使用Selenium时解决方案: Exception: Failed to find firefox binary. You can set it by specifying the ······
问题描述: Firefox在自动升级之后,在使用selenium的时候出现了如下错误: Exception: Failed to find firefox binary. You can set it ...
- Smarty section、foreach控制循环次数的实现详解
<!--{ section name='i' loop=$a }--><!--{ if $smarty.section.i.index < 3 }--><!--{ ...
- 用python读取csv信息并写入新的文件
import csv fo = open("result.txt", "w+") reader = csv.reader(open('test.csv')) f ...
- plantuml语法
活动图(新语法) 当前活动图(activity diagram)的语法有诸多限制和缺点,比如代码难以维护. 所以从V7947开始提出一种全新的.更好的语法格式和软件实现供用户使用(beta版). 就像 ...
- centos下同步备份工具rsync的安装及配置
http://www.cnblogs.com/wander1129/archive/2013/03/27/2984922.html
- java数据结构之ConcurrentHashMap
大神博客:https://www.cnblogs.com/study-everyday/p/6430462.html https://baijiahao.baidu.com/s?id=16170899 ...
- MySQL InnoDB存储引擎大观
转的一篇文章作者:七把刀链接:https://www.jianshu.com/p/d4cc0ea9d097 MySQL InnoDB 引擎现在广为使用,它提供了事务,行锁,日志等一系列特性,本文分析下 ...
- Centos7搭建主从DNS服务器
1.准备 例:两台192.168.11.10(主),192.168.11.11(从),域名www.test1.com # 主从DNS服务器均需要安装bind.bind-chroot.bind-util ...
- Docker部署Nextcloud私有网盘
对于国内某度的网盘限速行为大家有目共睹,不过对于商业化的产品模式这样也无可厚非,毕竟企业也是盈利为目的.如果想享受互联网技术带来的便利,刚好也懂一点技术的话可以尝试搭建属于私有的网盘.个人比较推荐的是 ...