位置: 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

  • 应交企业所得税会计分录
  • 应纳税所得额的会计分录
  • 当月红冲发票账务怎么处理
  • 工会经费与残保金的取数是一致吗
  • 财务章备案和不备份区别
  • 个税手续费返还政策文件
  • 哪些企业需要纳税
  • 个税扣除项生效日期
  • 个人取得什么收入不交税
  • 房地产开发企业土地增值税清算
  • 长期股权投资会减值损失吗
  • 承付期满日怎么算
  • 法院判罚利息怎么算
  • 火车车票怎么样
  • 个体工商户地税没有申报罚款多少
  • 店铺拆除费用
  • 折旧率通俗理解
  • 办公费差旅费属于
  • 非贸易企业代扣代缴增值税和附加税如何做账?
  • 在win11
  • 怎么关闭电量低
  • 认缴出资日期是2050什么意思
  • 计算工业总产值指数
  • 计提职工薪酬怎么算
  • 预提利息的分录怎么做
  • php 智能家居
  • 支付公司保洁费未开发票
  • 股权转让怎么交印花税2019年最新
  • tensorflow dlib
  • 林木业折旧年限
  • php进程数设置
  • php导入php文件
  • 小程序uniapp怎么用
  • vscode+cmake
  • php查询sqlserver数据库
  • 账载折旧金额填哪个数
  • 税负率怎么计算举例子
  • 收到保险公司的车赔款会计分录怎么写
  • 应交土地增值税税率
  • 小规模纳税人通行费电子普票能抵扣吗
  • python清除变量的命令
  • sqlserver连接不到本地服务器
  • hadoop集群状态
  • 浏览器测试网页
  • 自产的货物用于在建工程增值税
  • 申报错误要罚款吗
  • sqlserver2005 xml字段的读写操作
  • 工会经费的会计分录2022
  • 现金净流量的计算公式正确的有
  • 车辆处置收入怎么交税
  • 多认证的发票怎么做账
  • 事业单位研究开设的课题
  • 小规模纳税人防伪税控会计分录
  • 公司在银行买的金条怎么入账
  • 公司汽车维修
  • 外经证预缴税款必须去外地交税吗
  • 住房按揭贷款贷20年还剩八年是黄好还是慢慢的还好
  • 跨年的管理费用可以直接冲吗
  • 金蝶主要业务及软件产品
  • 实缴制下未到位资金
  • win8更新win8.1
  • Win10如何禁止显卡驱动自动更新
  • winxp系统连接网络
  • ubuntu下安装QT教程
  • mac文档怎么传给winds
  • helpcfg是什么文件
  • linux 定时运行
  • grub修复引导windows10
  • Linux常用命令的实验总结
  • 东芝笔记本配件
  • centos ssh升级
  • linux小技巧
  • jquery手机号码正则表达式
  • Unity3D游戏开发pdf
  • javascript运行在什么的脚本语言
  • 如何用js实现一个简单的计算器
  • jQuery xml字符串的解析、读取及查找方法
  • 河北电子税务局新版登录
  • 国考什么时候开始备考比较好
  • 香皂需要换着用吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设