数组Array、对象Object、json格式常用的方法小结。

2023-05-16

一、对象Object常用方法

1 初始化方法

var obj = [];
var obj = new obj();
var obj = Object.create(null);

2 添加元素的方法

dic[“key”] = “value”;

3 删除key的方法

delete dic[“key”];

4 清空词所有条目

dic.clear();

5 删除

delete dic;

6 查看所有属性的方法

Object.keys(obj);
对象的所有键名都是字符串,所以加不加引号都可以,如果键名是数值,会被自动转为字符串但是,如果键名不符合标识名的条件(比如第一个字符为数字,或者含有空格或运算符),也不是数字,则必须加上引号,否则会报错

7 读取属性

obj.name || obj[’name’]
注意: 数值键名不能使用点运算符(因为会被当成小数点),只能使用方括号运算符。

8 检查变量是否声明

if(obj.name) || if(obj[’name’])

9 in 运算符用于检查对象是否包含某个属性,如果包含返回true,否则返回false

if ( ‘x’ in obj) {return 1}

10 for … in 循环用来遍历一个对象的全部属性

for (var i in obj) {
console.log(obj);
}

11 with 语句作用: 操作同一个对象的多个属性时,提供一些书写的方便

with(obj) {
name1 = 1;
name2 = 2;
}
等同于
obj.name1 = 1;
obj.name2 = 2;

数组Array常用的方法

Array.isArray() 方法用来判断某个值是否为Array。如果是,则返回 true,否则返回 false。

concat() 方法将传入的数组或非数组值与原数组合并,组成一个新的数组并返回.

forEach() 方法对数组的每个元素执行一次提供的函数(回调函数)。

join() 方法将数组中的所有元素连接成一个字符串。

keys() 方法返回一个数组索引的迭代器。

map() 方法返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组

pop() 方法删除一个数组中的最后的一个元素,并且返回这个元素。

push() 方法添加一个或多个元素到数组的末尾,并返回数组新的长度(length 属性值)。

toString() 返回一个字符串,表示指定的数组及其元素。

json常用的方法

判断是否是空json

  isEmptyObject: function (obj) {//true 空的json  false满的json
    var arr = [];                //根据数据的长度进行判断是否为空
    for (var item in obj) {
      arr.push(obj[item]);
    }
    if (arr.length === 0) {
      return true;
    } else {
      return false;
    }
  },

json数据去重复

  uniqueArray: function (array, key) {//array传入的数组 key:需要去重的key 返回已经去重过的数据
    var result = [array[0]];          
    for (var i = 1; i < array.length; i++) {
      var item = array[i];
      var repeat = false;
      for (var j = 0; j < result.length; j++) {
        if (item[key] == result[j][key]) {
          repeat = true;
          break;
        }
      }
      if (!repeat) {
        result.push(item);
      }
    }
    return result;
  },

将对象Object/json转化为数组

 toArray: function (obj) {//obj需要转化的json或者object
    var arr = [];
    for (var item in obj) {
      arr.push(obj[item]);
    }
    return arr;
  },
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数组Array、对象Object、json格式常用的方法小结。 的相关文章

  • 如何为本机启用现有 WCF 服务的 JSONP?

    我有一个现有的服务 如下方法 AspNetCompatibilityRequirements RequirementsMode AspNetCompatibilityRequirementsMode Allowed ServiceBehav
  • SQL Server 抱怨无效的 json

    我正在使用 Azure 数据工厂和 Azure SQL 数据库编写 ETL 工具 数据工厂捕获映射数据流的输出并将其作为字符串插入到 SQL Server 表 Audit OperationsEventLog 的 StatusMessage
  • 如何将异常序列化为Json

    C 异常是 ISerialisable 因此它们不能也是 DataContract 因此我无法使用 JsonDataContractSerializer 将异常序列化为 JSON 的替代方案是什么 由于这个问题还没有真正得到解答 只需创建一
  • R中整数类和数字类有什么区别

    我想先说我是一个绝对的编程初学者 所以请原谅这个问题是多么基本 我试图更好地理解 R 中的 原子 类 也许这适用于一般编程中的类 我理解字符 逻辑和复杂数据类之间的区别 但我正在努力寻找数字类和整数类之间的根本区别 假设我有一个简单的向量x
  • JSON-LD 缺少“}”或对象成员名称。错误

    我喜欢将 json ld 添加到我的网站 然后我想将它添加到我的开发网站来测试它 我收到错误消息 指出缺少 或对象成员名称 这是什么错误 我已正确关闭括号 如何修复它
  • 如何在 pandas 中读取并标准化以下 json?

    我在 stackoverflow 中使用 pandas 看到了很多 json 读取问题 但我仍然无法解决这个简单的问题 Data session id 0 X061RFWB06K9V 1 5AZ2X2A9BHH5U unix timesta
  • 全局传递 xhr onload 函数的值

    在我正在创建的应用程序中 我有以下 XMLHttpRequest 并且我正在尝试传递结果data在 的里面xhr onload 到在同一父函数中创建的数组中 var url http api soundcloud com resolve j
  • 如何舍入、取整、取整、截断

    如何对 jq jq 1 5 1 a5b5cbe 中的数字进行舍入 取整 取整和截断 例如 与 mass 188 72 我想 mass 188 有地板 mass 189 与天花板和圆形 舍入示例 5 52 gt 6 5 50 gt 5 or
  • 复杂对象MVC3的JSON序列化

    我有一个问题 我似乎不知道如何序列化类型的对象 public class SchedulingCalendarMonth public List
  • 从 php 到 JavaScript 的数组

    我正在尝试使用 json 将数组列表从 php 传输到 javascript 但它不起作用 JS ajax url getProfilePhotos php type post post or get method data if you
  • 如何为 Gson 编写自定义 JSON 反序列化器?

    我有一个 Java 类 用户 public class User int id String name Timestamp updateDate 我收到一个包含来自 Web 服务的用户对象的 JSON 列表 id 1 name Jonas
  • 发送 POST 请求时 JSON 原语无效

    我有以下 ajax 请求 其中我尝试将 JSON 对象发送到服务器 function sendData subscriptionJson ajax type POST url Url Action SubscribeSecurities S
  • 使用 Newtonsoft.Json.NET 搜索 JSON 根对象的正确 JsonPath 表达式是什么?

    大多数例子涉及Stefan G ssner 的书店示例 http goessner net articles JsonPath index html e3 但是我正在努力为简单对象 无数组 定义正确的 JsonPath 表达式 Id 1 N
  • JSON 解析错误:需要“STRING”

    我在用JSONLint http jsonlint com 解析一些 JSON 我不断收到错误 错误 第 1 行解析错误 产品 需要 STRING 却得到 未定义 这是代码 product code Abc123 description S
  • 编码:类型错误:write() 参数必须是 str,而不是 bytes

    我对 python 有初步的了解 但不清楚处理二进制编码问题 我正在尝试运行 firefox webextensions 示例中的示例代码 其中 python 脚本发送由 javascript 程序读取的文本 我不断遇到编码错误 蟒蛇代码是
  • 通过标识引用对象的标准方法(例如循环引用)?

    JSON 中是否有通过身份引用对象的标准方法 例如 具有大量 可能是循环 引用的图形和其他数据结构可以被合理地序列化 加载吗 Edit 我知道做一次性解决方案很容易 列出图中所有节点的列表 然后 我想知道是否有一个标准的 通用的解决方案来解
  • Node.js - console.log 不显示数组中的项目,而是显示 [Object]

    我在注销对象内数组的内容时遇到问题 实际的物体看起来像这样 var stuff accepted item1 item2 rejected response Foo envelope from The sender to new item1
  • jq中如何分组?

    这是 json 文档 name bucket1 clusterName cluster1 name bucket2 clusterName cluster1 name bucket3 clusterName cluster2 name bu
  • 使用 json_encode() 函数在 PHP 数组中生成 JSON 键值对

    我正在尝试以特定语法获取 JSON 输出 这是我的代码 ss array 1 jpg 2 jpg dates array eu gt 59 99 us gt 39 99 array1 array name gt game1 publishe
  • 从 Twitter API 2.0 获取 user.fields 时出现问题

    我想从 Twitter API 2 0 端点加载推文 并尝试获取标准字段 作者 文本 和一些扩展字段 尤其是 用户 字段 端点和参数的定义工作没有错误 在生成的 json 中 我只找到标准字段 但没有找到所需的 user fields 用户

随机推荐

  • ubuntu下nginx配置不生效,页面一直是默认页面welcome to nginx

    ubuntu下nginx的配置文件所在目录 xff1a etc nginx 我的问题是 监听80端口 xff1b 如果是其他的端口就是OK的 xff0c 只要一切换到80端口 xff0c 就自动是默认页面welcome to nginx 我
  • 埋点统计

    body 监听点击时间 但是要计算点击位置 开源的系统countly页面热区统计百度埋点诸葛io xff0c 易观方舟第三方https zhuanlan zhihu com p 65834362https github com 534591
  • 从零搭建vue 项目(一)

    从零搭建vue 项目 xff08 一 xff09 我的博客 代码地址 代码地址 首先4个官方文档 VueVue CLIVue RouterVuex 创建vuedemo的项目 npx 64 vue cli create vuedemo spa
  • ubuntu 18.04 桌面安装 tasksel aptitude failed (100) 问题修复

    ubuntu 18 04 桌面无法启动 xff0c 可能是安装远程桌面时搞坏了图形桌面的配置 因为实在百度不到具体出错的文件和相关配置 只能删除了桌面系统 然后问题来了 xff0c sudo apt install ubuntu desk
  • react+ts+mobx+router+antd

    安装 npx create react app my app template typescript span class token comment or span yarn create react app my app templat
  • React 的 一路记忆

    React 整体刷新 组件 43 单项数据流 React组件 1 React组件一般k提供方法f而是某种状态机 2 React组件可以理解q一o纯函数 3 单向数据绑定 受控组件 vs 非受控组件 受控组件 xff1a 表单元素状态由使用者
  • VSCode中的git使用篇

    基本上使用 在一个目录下clone项目 xff1b span class token function git span clone XXXXXX git 使用VScode 打开项目 右击通过Code打开 使用vscode提交代码 打开下面
  • 重读HTML

    HTML xff08 超文本标记语言 xff09 初识HTMLHTML 元素大体分14类怎么使用1 HTML 标签里的元素名不区分大小写2 闭合标签3 非闭合标签 语义化标签语法基本语法标签语法文本语法注释语法ProcessingInstr
  • 微信小程序从入门到放弃(一)

    微信小程序新手遇见的问题 目录 用 TOC 来生成目录 xff1a 微信小程序新手遇见的问题 目录wxrequest数据请求失败请求豆瓣电影数据报错不在以下合法域名列表内请参考文档元素的显示隐藏hidden和wxif wxif vs hid
  • 微信小程序从入门到放弃(二)

    手机上预览不到图片 原因 xff1a 图片放到本地image文件内 xff0c 且设置为背景图片 xff0c 例如一些小的图片在手机上预览不到图片 xff0c 而在微信开发者工具上可以预览到 xff0c 解决方法 xff1a 将一些图标字体
  • 微信小程序从入门到放弃(三)

    空格无法使用 打出空格 xff1a amp nbsp 在微信小程序无法使用只是一个字符串 br n 等转义字符无法使用 解决方法 xff1a 使用中文全角打出空格即可 手机预览不到图片 1 讲所有的图片 xff0c 目录确定一遍 xff0c
  • 微信小程序从入门到放弃(四)

    swiper组件的使用 官方链接 swiper官方链接 可以设置上下滚动 vertical 为true xff0c 可以设置为上下滚动 xff1b false左右滚动 xff1b 无缝滚动 circular 为true xff0c 可以设置
  • 微信小程序从入门到放弃(五)

    一 字体的大小 font size 像素单位rpx与px的差别 lt view style 61 34 font size 30px 34 gt 我是汉字font size 30px lt view gt br lt view style
  • 微信小程序从入门到放弃(六)

    微信小程序wx hideLoad 安卓不兼容问题 当频繁进行数据交互的时候 xff0c 加载动画 xff0c 在安卓上的时候 xff0c hideLoad xff0c 不能执行 xff0c 使showLoad xff08 xff0c 一直在
  • WIN10的MD5命令

    windows方法 xff1a win键 43 r键输入cmd调出命令行 输入 xff1a 查看MD5值 xff1a certutil hashfile 文件名 MD5 查看 SHA1 certutil hashfile 文件名 SHA1
  • css3样式效果

    一 盒子内圆角 效果图 css样式代码 xff1a width 300px br height 200px br background radial gradient circle at top left transparent 28px
  • 3D背景图动画阴影效果

    先看效果图 原理rotate的使用 当鼠标放到图片的一角处的时候 xff0c 实现该处向下坍缩的效果 xff0c 即用的是rotate的3D属性 xff0c 此时的图片向相应的方向的进行偏转 xff0c 偏转的角度x xff0c y如下图所
  • Vue遇到的bug-01(vue引擎模板报错)

    vue结合webpack的使用 01 报错信息 xff1a 如下图 xff08 配置文件格式错误 xff09 错误的代码 xff1a 如下图 报错信息显示的是配置文件错误 xff08 报错信息的最后一句话是 loaders should b
  • 百度地图API支持HTTPS

    百度地图怎么样才能支持API支持HTTPS 报错信息如下 xff1a Mixed Content The page at https www c 8 com public admin index index html was loaded
  • 数组Array、对象Object、json格式常用的方法小结。

    一 对象Object常用方法 1 初始化方法 var obj 61 var obj 61 new obj var obj 61 Object create null 2 添加元素的方法 dic key 61 value 3 删除key的方法