位置: IT常识 - 正文

js字符串转换为对象格式的3种方法(js字符串转换为数字类型)

编辑:rootadmin
js字符串转换为对象格式的3种方法

推荐整理分享js字符串转换为对象格式的3种方法(js字符串转换为数字类型),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:js字符串转换为数值,js字符串转换为日期格式,js字符串转换为数组,js字符串转换为数组,js字符串转换为对象,js字符串转换为数组,js字符串转换为日期,js字符串转换为整数,内容如对您有帮助,希望把文章链接给更多的朋友!

背景:

js字符串转换为对象格式,一般都会想到JSON.parse(),但数据不是标准的 JSON 格式的时候会解析出错,这时候就可以使用eval() 函数、new Function()方法来转换。

常用3种将字符串string转为json对象 方法:

var str = '{"name":"小明","age":18}';var json = JSON.parse(str);//第一种var json2 = eval("(" + str + ")");//第二种var json3 = (new Function("return " + str))();//第三种

 打印效果:

 

详细说明:

JSON.parse()

语法:

JSON.parse(text[, reviver]);//text:必需, 一个有效的 JSON 字符串。//reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数。

解析前要确保你的数据是标准的 JSON 格式,否则会解析出错。

情况一:有的人可能会习惯写成对象形式的字符串,如:str = '{name:"小明",age:18}'; 结果使用JSON.parse()来转化会报错,因为使用JSON.parse需严格遵守JSON规范。

情况二:JSON.parse使用单引号来套双引号,如果反过来写呢,如:var str = "{'name':'小明', 'age':18}";(相信也不少人习惯用双引号套单引号) 结果使用JSON.parse()来转化也会报错 

js字符串转换为对象格式的3种方法(js字符串转换为数字类型)

eval() 函数

定义和用法:

eval() 函数计算 JavaScript 字符串,并把它作为脚本代码来执行。

如果参数是一个表达式,eval() 函数将执行表达式。如果参数是Javascript语句,eval()将执行 Javascript 语句。

语法:

eval(string)参数描述string必需。要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句。

eval()的返回值

eval()的返回值遵循以下规则:

1.如果eval()的参数不是字符串,那么eval()将直接返回参数。

2.如果eval()的参数是字符串,那么eval()将这个字符串解析成代码后进行执行,并返回最后一行代码执行的结果。

3.如果字符串无法解析成合法的代码,eval()将抛出SyntaxError错误 

new Function()

这个特殊的new Function表面看起来很奇怪,但在实践中显得非常有用。

语法:

let func = new Function(arg1, arg2, ..., body);

历史原因,参数也可以以逗号分隔的列表的形式给出。

这三个意思相同:

new Function('a', 'b', 'return a + b'); // 基础语法new Function('a,b', 'return a + b'); // 逗号分隔new Function('a , b', 'return a + b'); // 逗号加空格分隔

使用new Function创建的函数,其[[Environment]]引用全局词法环境,而不是包含该函数的外部词法环境。因此,他们不能使用外层的变量。但这确实很好,因为它可以使我们免于错误。明确地传递参数在架构上是一种更好的方法,并且不会在使用minifiers时不会产生问题。 

本文链接地址:https://www.jiuchutong.com/zhishi/297742.html 转载请保留说明!

上一篇:【小沐学C++】C++ MFC中嵌入web网页控件(WebBrowser、WebView2、CEF3)

下一篇:HTML与PyCharm

  • vivos6有什么颜色呢(vivo s6 5g手机参数颜色)

    vivos6有什么颜色呢(vivo s6 5g手机参数颜色)

  • 微信语音按住自动断开(微信语音按住自动接听)

    微信语音按住自动断开(微信语音按住自动接听)

  • iphone 64g够用吗

    iphone 64g够用吗

  • 电脑上的谷歌浏览器为什么打不开网址(电脑上的谷歌浏览器)

    电脑上的谷歌浏览器为什么打不开网址(电脑上的谷歌浏览器)

  • qq彩签别人能看到吗(qq彩签别人可以看到吗)

    qq彩签别人能看到吗(qq彩签别人可以看到吗)

  • 电脑桌面无法占满屏幕(电脑桌面无法占满屏幕win10)

    电脑桌面无法占满屏幕(电脑桌面无法占满屏幕win10)

  • 抖音转发箭头为何显示朋友头像(抖音转发箭头为什么不显示头像和微信标志了)

    抖音转发箭头为何显示朋友头像(抖音转发箭头为什么不显示头像和微信标志了)

  • 闲鱼不点开消息会显示已读吗(闲鱼点击想要没有发消息会被看到吗)

    闲鱼不点开消息会显示已读吗(闲鱼点击想要没有发消息会被看到吗)

  • oppo打字声音怎么关闭(oppo打字声音怎么换别的声音)

    oppo打字声音怎么关闭(oppo打字声音怎么换别的声音)

  • 微信有异常行为怎么恢复正常(微信有异常行为么回事怎么解决)

    微信有异常行为怎么恢复正常(微信有异常行为么回事怎么解决)

  • 手机频繁重启却不开机(手机频繁重启却不开机多少钱)

    手机频繁重启却不开机(手机频繁重启却不开机多少钱)

  • 为什么vivo手机收到信息不显示内容(为什么vivo手机玩一会就很烫)

    为什么vivo手机收到信息不显示内容(为什么vivo手机玩一会就很烫)

  • 学习linux先学什么(学完linux学什么)

    学习linux先学什么(学完linux学什么)

  • 微信好友过期了怎么加回来(微信好友过期了怎么添加)

    微信好友过期了怎么加回来(微信好友过期了怎么添加)

  • 苹果8原装充电器多少w(苹果8原装充电器多少A)

    苹果8原装充电器多少w(苹果8原装充电器多少A)

  • 电源非模组化和全模组化有什么区别(电源非模组化和全模组化的区别)

    电源非模组化和全模组化有什么区别(电源非模组化和全模组化的区别)

  • nova6防水级别(nova6防水等级多少)

    nova6防水级别(nova6防水等级多少)

  • 苹果手机显示网络不可用怎么办(苹果手机显示网络不稳定是什么意思)

    苹果手机显示网络不可用怎么办(苹果手机显示网络不稳定是什么意思)

  • word标题格式设置(word标题格式设置操作步骤)

    word标题格式设置(word标题格式设置操作步骤)

  • idc备案是什么(什么是idc设备)

    idc备案是什么(什么是idc设备)

  • vivox27手机没有钱包吗(vivox27手机没有声音,而且设置声音功能闪退怎么回事)

    vivox27手机没有钱包吗(vivox27手机没有声音,而且设置声音功能闪退怎么回事)

  • z87主板支持ddr4吗(z87主板支持m2固态吗)

    z87主板支持ddr4吗(z87主板支持m2固态吗)

  • 苹果7换外屏后遗症(苹果7换外屏后变白屏是什么原因?)

    苹果7换外屏后遗症(苹果7换外屏后变白屏是什么原因?)

  • 什么是CMOS? 什么是BIOS(什么是CMOS什么是BIOS)

    什么是CMOS? 什么是BIOS(什么是CMOS什么是BIOS)

  • 企业所得税的征收对象是什么
  • 公司基本户里的钱有利息吗
  • 环保税计税依据怎么算
  • 差额征税的财税处理怎么做?
  • 教育用地转让缴哪些税
  • 错账更正分录
  • 未确认收入可以开发票吗
  • 材料实际成本的会计分录
  • 未交社保的员工需要交个税吗
  • 股票怎么算印花税收入
  • 个体户税务申报流程季度0申报
  • 增值税进项转出后企业所得税调整是含税价还是不含税价
  • 产业政策鼓励类
  • 出口退税过期了怎么办理
  • 固定资产清查表
  • 如果当月增值税进项比销项多怎么结转
  • 个人独资企业生产经营费用与家庭生活费用
  • 电脑找不到休眠设置了
  • 苹果手机耳返功能怎么关闭
  • 生产企业提供售后服务
  • 社会保险费的征收程序
  • msmpeng.exe是什么进程
  • session失效的方法
  • php几天可以速成
  • YunDetectService.exe是什么进程?YunDetectService.exe禁止使用的方法
  • movie maker是什么软件
  • 存货周转材料报废处理会计分录
  • vue3的ref,reactive的使用和原理解析
  • js栈堆的区别
  • 音乐制作人评刀郎新专辑
  • php运算符@符号
  • 税控盘登录密码设置
  • 汇率一般是以几位数来显示
  • 个体户发票没有开户行和账号行吗
  • 销售发票重复开库存商品如何处理?
  • phpcms建站流程
  • python numpy 删除元素
  • 原材料折价销售怎么算
  • 会展服务打印费怎么算
  • 律师跨省办案收取的费用叫什么
  • 固定资产一次性扣除政策
  • 个税汇算清缴时劳务报酬怎么计税
  • 工会经费多久缴纳一次
  • 非正常损失的货物
  • 作废的发票也要交印花税吗
  • 零税率应税服务出口退税
  • 内部应收账款计提坏账准备的抵消例题
  • 土地出让金抵减增值税
  • 低值易耗品意思
  • 年底本年利润结转错了怎么调
  • 出口抵减内销产品应纳税额在借方
  • 跨年成本少结转如何调整
  • 其它应付款为负
  • 无发票的费用怎么处理
  • 购买农产品进行销售要交税吗
  • 租写字楼水电费自己付吗
  • 主营业务成本包括哪些费用
  • 工业企业外购材料支付的采购费用应计入什么账户
  • 微软每月补丁更新一般于什么时间发布
  • wget下载命令
  • 如何让xp系统崩溃
  • win1020h2版好不好
  • 进入Linux单用户模式
  • python 如何生成随机数
  • js实现计算器代码
  • jquery form serialize
  • Python 专题四 文件基础知识
  • 蛋疼的生活歌曲
  • 键盘搜索的快捷键
  • Python默认参数 数组坑
  • [置顶]公主大人接下来是拷问时间31
  • 国家税务局网站发票验真伪
  • 广告业发票税率是多少 可以抵扣多少
  • 关于研发费用的审计程序,下列说法中错误的是
  • 铜梁在重庆主城哪个方向
  • 财务报表怎么填写
  • 浙江省税务师事务所排名
  • 姓名章加不加印字
  • 贸易公司服装
  • 2020各省旅游
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设