国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

js 把字符串轉(zhuǎn)成json對(duì)象的三種方法

這篇具有很好參考價(jià)值的文章主要介紹了js 把字符串轉(zhuǎn)成json對(duì)象的三種方法。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

js 把字符串轉(zhuǎn)成json對(duì)象的三種方法

不管字符串是否含有轉(zhuǎn)義字符,都能轉(zhuǎn)換成 Json 對(duì)象

1, js自帶的eval函數(shù),其中需要添加小括號(hào)eval('('+str+')');

function strToJson(str){
  var json = eval('(' + str + ')');
  return json;
}

2,new Function形式

function strToJson(str){
  var json = (new Function("return " + str))();
  return json;
}

3,全局的JSON對(duì)象

function strToJson(str){
  return JSON.parse(str);
}

使用 這種方式限制稍微多一些,需嚴(yán)格遵守JSON規(guī)范,如屬性都需用引號(hào)引起來,如下

var str = '{name:"jack"}';
var obj = JSON.parse(str); // --> parse error

name沒有用引號(hào)引起來,使用JSON.parse所有瀏覽器中均拋異常,解析失敗。

如果字符串是 undefined 或者 '',使用上面三種方式都會(huì)報(bào)錯(cuò),所以需要先特殊判斷一下字符串是否是 undefined 或者空字符串,如果不是則可以使用上面的三種方式來轉(zhuǎn)換,一般都是使用第一中方法,最簡(jiǎn)單。

轉(zhuǎn)自:js將字符串轉(zhuǎn)換成json的三種方式

javascript 把對(duì)象轉(zhuǎn)換成 json 字符串

JSON.stringify

JSON.stringify 方法將某個(gè)對(duì)象轉(zhuǎn)換成 JSON 字符串形式

const userInfo= {
    name: 'zs',
    age: 20
}
console.log(JSON.stringify(userInfo));
// {"name":"zs","age":20}

JSON.stringify 語(yǔ)法

語(yǔ)法: 可以有三個(gè)參數(shù),第一個(gè)是傳入要序列化的值,第二個(gè)為函數(shù)或者數(shù)組,第三個(gè)是文本添加縮進(jìn)、空格和換行符

JSON.stringify(value, replacer, space)

value:第一個(gè)參數(shù),將要序列后成 JSON 字符串的值。
replacer:【可選】第二個(gè)參數(shù)
(1) 如果該參數(shù)是一個(gè)函數(shù),則在序列化過程中,被序列化的值的每個(gè)屬性都會(huì)經(jīng)過該函數(shù)的轉(zhuǎn)換和處理;
(2) 如果參數(shù)是一個(gè)數(shù)組,則僅轉(zhuǎn)換該數(shù)組中具有鍵值的成員。成員的轉(zhuǎn)換順序與鍵在數(shù)組中的順序一樣。
(3) 如果該參數(shù)為未提供或者null ,則對(duì)象所有的屬性都會(huì)被序列化。
space:【可選】第三個(gè)參數(shù),美化文本格式,文本添加縮進(jìn)、空格和換行符,
(1) 如果 該參數(shù) 是一個(gè)數(shù)字,則返回值文本在每個(gè)級(jí)別縮進(jìn)指定數(shù)目的空格
(2) 該參數(shù)最大值為10,如果 該參數(shù)大于 10,則文本縮進(jìn) 10 個(gè)空格。
(3)該參數(shù)也可以使用非數(shù)字,如:\t。最大值為10

最多使用方式

JSON.stringify(eval(stu, null, 2)

如果想把包含轉(zhuǎn)義字符的字符串轉(zhuǎn)成 json 字符串

先試用 eval 把字符串轉(zhuǎn)成 json 對(duì)象,然后使用 JSON.stringify 把 json 對(duì)象轉(zhuǎn)成 json 字符串

JSON.stringify(eval(`(${stu})`), null, 2)

如果還需要特別判斷一下空字符串,加個(gè)三目運(yùn)算符就行

stu ? JSON.stringify(eval(`(${stu})`), null, 2) : ''

參考:

js將字符串轉(zhuǎn)換成json的三種方式

JSON.stringify用法文章來源地址http://www.zghlxwxcb.cn/news/detail-415929.html

到了這里,關(guān)于js 把字符串轉(zhuǎn)成json對(duì)象的三種方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • C++中求string類型字符串長(zhǎng)度的三種方法

    C++中求string類型字符串長(zhǎng)度的三種方法

    length()函數(shù)是string的內(nèi)置成員方,用于返回string類型字符串的實(shí)際長(zhǎng)度。 length()函數(shù)聲明: // 返回 string 長(zhǎng)度,單位字節(jié) size_t length() const noexcept; 示例1: size()函數(shù)與length()一樣,沒有本質(zhì)區(qū)別。string類剛開始只有l(wèi)ength()函數(shù),延續(xù)了C語(yǔ)言的風(fēng)格。引入STL之后,為了兼容又加入

    2024年02月07日
    瀏覽(26)
  • jquery和php json字符串轉(zhuǎn)數(shù)組對(duì)象 和 數(shù)組對(duì)象轉(zhuǎn)json字符串

    要實(shí)現(xiàn)從對(duì)象轉(zhuǎn)換為 JSON 字符串,使用 JSON.stringify( ) 方法: 要實(shí)現(xiàn)從 JSON 轉(zhuǎn)換為對(duì)象,使用 JSON.parse() 方法: 數(shù)組變字符串 字符串變數(shù)組 json轉(zhuǎn)數(shù)組?? json_decode(? string $json ,? bool $assoc = false ,? int $depth = 512 ,? int $options = 0 ) $json:待解碼的 json string 格式的字符串。這個(gè)函數(shù)

    2024年02月13日
    瀏覽(35)
  • 判斷字符串是否為回文的三種常用編程語(yǔ)言實(shí)現(xiàn)

    引言:回文是一種具有鏡像對(duì)稱性的字符串,即它從左到右讀和從右到左讀是相同的。回文可以在文學(xué)、語(yǔ)言學(xué)、數(shù)學(xué)、計(jì)算機(jī)科學(xué)等領(lǐng)域中得到廣泛應(yīng)用。在計(jì)算機(jī)科學(xué)中,判斷一個(gè)字符串是否為回文是一項(xiàng)基本的算法挑戰(zhàn)。在本文中,我們將介紹三種常見的編程語(yǔ)言中用

    2024年02月03日
    瀏覽(22)
  • mysql中的實(shí)現(xiàn)字段或字符串拼接的三種方式

    mysql中的實(shí)現(xiàn)字段或字符串拼接的三種方式

    concat函數(shù)是將多個(gè)字段或字符串拼接為一個(gè)字符串;但是字符串之間沒有任何分隔。 concat函數(shù)官方介紹 執(zhí)行結(jié)果如下: 執(zhí)行結(jié)果如下: 如果拼接的字段中有一個(gè)為null,則結(jié)果為null。 執(zhí)行結(jié)果如下: concat_ws函數(shù)將多個(gè)字段或字符串拼接為一個(gè)字符串,且字符串直接可以指定

    2024年02月22日
    瀏覽(27)
  • 實(shí)現(xiàn)對(duì)象轉(zhuǎn)成字節(jié)數(shù)組(整型支持按位寫入,字符串則按字節(jié)寫入)

    閑著無聊,寫了一個(gè)對(duì)象轉(zhuǎn)換成byte[]的工具類,支持整型按位寫入(大大節(jié)省空間),具體步驟如下: 1. 定義實(shí)體類和注解 2. 工具類 ? ? 3. 測(cè)試結(jié)果 ? ? 參考文章: https://www.cnblogs.com/Dotnet9-com/p/17981055

    2024年01月23日
    瀏覽(26)
  • Java實(shí)現(xiàn)對(duì)象轉(zhuǎn)成字節(jié)數(shù)組(整型支持按位寫入,字符串則按字節(jié)寫入)

    閑著無聊,寫了一個(gè)對(duì)象轉(zhuǎn)換成byte[]的工具類,支持整型按位寫入(大大節(jié)省空間),具體步驟如下: 1. 定義實(shí)體類和注解 2. 工具類 ? ? 3. 測(cè)試結(jié)果 ? ? 參考文章: https://www.cnblogs.com/Dotnet9-com/p/17981055

    2024年01月23日
    瀏覽(28)
  • Json對(duì)象和Json字符串之間相互轉(zhuǎn)換

    Json對(duì)象和Json字符串之間相互轉(zhuǎn)換

    作為前端開發(fā),在和后端進(jìn)行聯(lián)調(diào)接口時(shí),總會(huì)遇到要求傳JSON字符串或是JSON對(duì)象,或者是返回值里是JSON字符串要在頁(yè)面上展示JSON對(duì)象這種情況,都需要前端開發(fā)人員對(duì)Json對(duì)象和Json對(duì)象進(jìn)行相互轉(zhuǎn)換,得到想要的結(jié)果。 廢話不多說,直接上干貨: 1.首先定義一個(gè)Json對(duì)象:

    2024年02月11日
    瀏覽(34)
  • 如何將JSON字符串轉(zhuǎn)化成對(duì)象

    在這里只能使用ObjiectMapper這個(gè)類才能將Json字符串轉(zhuǎn)成對(duì)象的格式進(jìn)行輸出 話不多說,直接上代碼 注意事項(xiàng): json字符串只能匹配上實(shí)體類里面定義的屬性,沒有被定義的屬性是無法進(jìn)行匹配賦值的

    2024年02月13日
    瀏覽(23)
  • JAVA 字符串JSON Map 對(duì)象轉(zhuǎn)化

    目錄 字符串轉(zhuǎn)JSON JSON 轉(zhuǎn)字符串 json字符串轉(zhuǎn)map 將map轉(zhuǎn)成json字符串 map轉(zhuǎn)對(duì)象 將對(duì)象轉(zhuǎn)化成map 將對(duì)象轉(zhuǎn)化成JSON Json轉(zhuǎn)對(duì)象 方式一 第一步 將map 轉(zhuǎn)成json字符串對(duì)象 第二步 將json字符串對(duì)象轉(zhuǎn)化成對(duì)象 第一步 將對(duì)象轉(zhuǎn)化成json字符串 第二步 將JSON字符串轉(zhuǎn)成map 方法一:fastjson轉(zhuǎn)

    2024年02月15日
    瀏覽(27)
  • 如何將JSON字符串?dāng)?shù)組轉(zhuǎn)對(duì)象集合

    1、、、引入jar 包 2、Java對(duì)象轉(zhuǎn)成JSON格式 3、JSON格式字符串轉(zhuǎn)換成Java對(duì)象 3.1、直接將JSON字符串轉(zhuǎn)換成Java對(duì)象 3.2、先將JSON字符串轉(zhuǎn)換成JSON對(duì)象,再轉(zhuǎn)換成Java對(duì)象 3.3、如果JSON字符串是一個(gè)JSON數(shù)組,并且數(shù)組里面存放的同一種類型的對(duì)象,可以將這個(gè)JSON數(shù)組轉(zhuǎn)換成Java的Li

    2024年02月02日
    瀏覽(19)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包