Object.keys方法之详解
记一道JavaScript面试题
问题: 如果我们使用JavaScript的”关联数组”,我们怎么计算”关联数组”的长度?
var counterArray = {A : 3,B : 4 }; counterArray["C"] = 1;
其实答案很简单,直接计算key的数量就可以了。
Object.keys(counterArray).length // Output 3
在实际开发中,我们有时需要知道对象的所有属性,原生js给我们提供了一个很好的方法:Object.keys(),该方法返回一个数组
- 传入对象,返回属性名
var obj = {'a':'123','b':'345'}; console.log(Object.keys(obj)); //['a','b']var obj1 = { 100: "a", 2: "b", 7: "c"}; console.log(Object.keys(obj1)); // console: ["2", "7", "100"]var obj2 = Object.create({}, { getFoo : { value : function () { return this.foo } } }); obj2.foo = 1; console.log(Object.keys(obj2)); // console: ["foo"]
- 传入字符串,返回索引
var str = 'ab1234'; console.log(Object.keys(obj)); //[0,1,2,3,4,5]
- 构造函数 返回空数组或者属性名
function Pasta(name, age, gender) {this.name = name;this.age = age;this.gender = gender;this.toString = function () {return (this.name + ", " + this.age + ", " + this.gender);}}console.log(Object.keys(Pasta)); //console: []var spaghetti = new Pasta("Tom", 20, "male");console.log(Object.keys(spaghetti)); //console: ["name", "age", "gender", "toString"]
- 数组 返回索引
var arr = ["a", "b", "c"];console.log(Object.keys(arr)); // console: ["0", "1", "2"]
转载于:https://www.cnblogs.com/7qin/p/9726696.html
Object.keys方法之详解相关推荐
- Object.defineProperty方法(详解)
OK,这一篇主要想说一下Object.defineProperty这个方法. 这个方法也是Vue数据双向绑定原理的常见面试题 所以也是有必要好好掌握的哦 首先我们知道JS中是支持面向对象编程的,也是有 ...
- Object.keys方法详解
Object.keys方法详解 一.语法 Object.keys(obj) 参数:要返回的对象 返回值:所有可枚举属性的字符串 二.对象处理,返回枚举属性数组 let obj = { name:&qu ...
- java condition详解_Java使用Condition控制线程通信的方法实例详解
Java使用Condition控制线程通信的方法实例详解 发布于 2020-4-20| 复制链接 摘记: 本文实例讲述了Java使用Condition控制线程通信的方法.分享给大家供大家参考,具体如下 ...
- python中new方法详解及_Python中new方法的详解
new_ 方法是什么? __new__方法其实就是创建对象的方法 new()方法是在类准备将自身实例化时调用. 一个类可以有多个位置参数和多个命名参数,而在实例化开始之后,在调用 init()方法之前 ...
- mvc ajax提交html标签,Mvc提交表单的四种方法全程详解
Mvc提交表单的四种方法全程详解 2019-01-05 编程之家 https://www.jb51.cc 编程之家收集整理的这篇文章主要介绍了Mvc提交表单的四种方法全程详解,编程之家小编觉得挺不错的 ...
- Java的JVM运行时栈结构和方法调用详解
详细介绍了Java 的JVM的运行时栈结构,以及和方法调用详解,包括解析调用和分派调用. JVM对于方法的执行是基于栈的,方法调用--入栈,方法调用完毕--出栈,了解JVM的运行时栈结构,有助于我们更 ...
- java 拦截器顺序_Springmvc拦截器执行顺序及各方法作用详解
实现HandlerInterceptor接口或者继承HandlerInterceptor的子类,比如Spring 已经提供的实现了HandlerInterceptor 接口的抽象类HandlerInt ...
- JS 中 valueOf() 方法的详解
JS 中 valueOf() 方法的详解 JavaScript 中的 valueOf() 方法用于返回指定对象的原始值,若对象没有原始值,则将返回对象本身.通常由JavaScript内部调用,而不是在 ...
- golang导入git包_使用go module导入本地包的方法教程详解
go module 是Go1.11版本之后官方推出的版本管理工具,并且从 Go1.13 版本开始, go module 将是Go语言默认的依赖管理工具.到今天 Go1.14 版本推出之后 Go mod ...
最新文章
- (一)Python装饰器的通俗理解
- h5的语义化部分_Html5新增的语义化标签(部分)
- JavaScript与HTML交互——事件
- Ubuntu火狐浏览器无法输入简体中文的解决方案
- 北京工业大学微型计算机接口技术考试,汇编语言微机原理及接口技术期末试卷含答案...
- 【SQL语句】 - Ctrl+3 查询表属性的存储过程 [sp_select_talberowName]
- 剑指offer:字符串的排列
- 《编码的奥秘》记录(二)
- QT安装遇到的问题及解决
- Mac OSX安装MongoDB
- 抖音用什么编程语言_抖音app软件开发流程是什么,主要运用的开发工具以及语言是什么?...
- pdf 转 高清图片
- mevan 的常用命令和参数解释
- 绿卡日记:2020-11-20
- 影视剪辑,自学剪辑,视频剪辑7天学习计划
- 技术报告 | 罗汉堂:理解大数据:数字时代的数据和隐私2021.pdf(附下载链接)
- python下载批量图片
- info()函数与describe函数
- 当 SSR 遇上 Serverless,轻松实现页面瞬开
- julia简易教程——安装Julia+jupyter notebooks
热门文章
- 距离传感器控制灯泡代码_如何使用颜色传感器和超声波传感器检测障碍物和避障...
- 大数据与数据挖掘考试题_北京2020届中考物理出题策略大揭秘!
- 语义网所谓的“本体”的具体例子是什么?人工智能
- RuntimeError: Assertion cur_target 0 cur_target n_classes failed
- Python中常见字符串去除空格的方法总结
- Jieba分词原理与解析
- 梯度提升决策树(GBDT)与XGBoost、LightGBM
- Redis概述和基础
- 服务器技术综述(四)
- 画笔Paint的使用