js判断是不是数组和获取对象的键值对

1、判断是否为数组

通过constructor来判断,当然也可以通过原型来判断

    var arr = [],
    res = arr.constructor === Array ? '是数组' : '不是数组';
    console.log(res);//是数组

2、获取对象的键值对

今天碰见一个文件提交失败时,后台返回的错误提示信息。需要对键值对进行拼接,反馈给用户。然后来做这么一个笔记,加深一下记忆。
返回的错误信息是这样的:


error.jpg

这时候就需要拿到键值对进行拼接了,用for循环来实现就很简单了:

    var obj = {
        'name': 'liuhuan',
        'age': 18
    },
    str = '';
    for (var key in obj) {
        str += key + ':' + obj[key] + '\n';
    }
    console.log(str);
    //name:liuhuan
    //age:18

值得注意的是对象的键可以不用引号直接写的,如:

    var obj = {
        'name': 'liuhuan',
        'age': 18,
        sex: 'man'
    },
    str = '';

这样写是没问题的,但是值不加引号是会报错的。通过中括号来拿值时还是需要加上引号obj['sex'],关于通过点拿值和中括号拿值转几点总结:
中括号运算符总是能代替点运算符。但点运算符却不一定能全部代替中括号运算符。

中括号运算符可以用字符串变量的内容作为属性名。点运算符不能。

中括号运算符可以用纯数字为属性名。点运算符不能。

中括号运算符可以用js的关键字和保留字作为属性名。点运算符不能。

以上几点是别人的总结,我目前自己还没用过中括号去拿值的情况。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  •   面向对象(Object-Oriented,OO)的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意...
    霜天晓阅读 6,440评论 0 6
  • 第3章 基本概念 3.1 语法 3.2 关键字和保留字 3.3 变量 3.4 数据类型 5种简单数据类型:Unde...
    RickCole阅读 10,670评论 0 21
  • 重要信念:任何消极负面情绪都有积极的正面意义。 觉察:问我怎么了?分离小我 倾听:它在说什么?愤怒是由于期待未达成...
    星空很希腊阅读 1,261评论 0 0
  • 路由:就是根据网址的不同,返回不同的内容给用户 当我们写完一个组件之后,去@/router/index.js内,先...
    八宝君阅读 2,812评论 0 3
  • 6月10日常州面基时,同桌简单送了我两本书,一本是陈中的《复盘》,另一本是邱昭良的《复盘+》,前者的核心思想是指对...
    小怪兽的自我修炼阅读 3,060评论 0 3