字串與JSON

hahadelphi發表於2021-09-09

1.使用陣列拼接出如下字串

    var prod = {        name: '女裝',        styles: ['短款', '冬季', '春裝']
    };     function getTplStr(data) {            var arr = [];
            arr.push('
');             arr.push(' 
' + data['name'] + '
');            for(var i = 0; i ' + data['styles'][i] + '');             }             arr.push('
');            return arr.join('');         }        console.log(getTplStr(prod))

2.寫出兩種以上宣告多行字串的方法

    //方法1,字串拼接
      var str1 = ''
      str1 += '
    '       str1 += '  
  • 1
  • '       str1 += '  
  • 2
  • '       str1 += '
'       console.log(str1)     //方法2, 陣列 join       var str2 = []       str2.push( '
    ')       str2.push( '  
  • 1
  • ')       str2.push( '  
  • 2
  • ')       str2.push( '
')       console.log(str2.join(''))    //方法3, 用來轉義換行符號,後面沒空格       var str3 = '
                        
  • 1
  •                     
  • 1
  •                    
'       console.log(str3)   //方法4, ES6的多行字串表示方法       var str3 = `
                        
  • 1
  •                     
  • 2
  •                   

3.補全如下程式碼,讓輸出結果為字串: hello\飢人谷

    1.var str = 'hello' + '\\' +  '飢人谷'
      console.log(str)    2.var str2 = "hello\\飢人谷"
      console.log(str2)

4.以下程式碼輸出什麼?為什麼

    var str = 'jirengunruoyu'
    console.log(str.length) //輸出為13個字元,因為n代表為一個字元

5.寫一個函式,判斷一個字串是迴文字串,如 abcdcba是迴文字串, abcdcbb不是

    function palindromeStr(str) {            var str2 = str.split('').reverse().join('');            if(str === str2) {                console.log('迴文字串');
            }else{                console.log('不是迴文字串');
            }
        }
        palindromeStr('abcb');

6.寫一個函式,統計字串裡出現出現頻率最多的字元

       function countStr(str) {            if(typeof str === 'string') {                var dict = {};                var count = 0;                var maxStr;                var str = str.toLowerCase();                for(var i = 0; i  count) {
                        count = dict[key];
                        maxStr = key;
                    }
                }                console.log('字元最多的是:' + maxStr + ',數量為:' + count);
            }else{                console.log('請輸入string');
            }  
        } 
        countStr("Hello ppppppppppPeter Welcome tttttto jirengu");        // countStr(1684324164321313);

7.寫一個camelize函式,把my-short-string形式的字串轉化成myShortString形式的字串,如

    function camelize(str) {            var str2 = str.toLowerCase().split('-');            for(var i = 0; i 

8.寫一個 ucFirst函式,返回第一個字母為大寫的字元 (***)

        function ucFirst(str) {
            str = str.substr(0,1).toUpperCase() + str.slice(1);            console.log(str);
        }
        ucFirst('hunger');

9.寫一個函式truncate(str, maxlength), 如果str的長度大於maxlength,會把str截斷到maxlength長,並加上...

      1.function truncate(str,maxlength) {            var str2 = ''
            if(str.length > maxlength) {                for(var i = 0; i  num){                var arr = obj.split('');
                arr.splice(num,obj.length-num,"....");                return arr.join('');
            }            return obj;
        }        console.log(truncate( "hello, this is hunger valley",10));

10.什麼是 json?什麼是 json 物件?什麼是 json 物件字面量?什麼是 JSON內建物件?

  • JSON格式(JavaScript Object Notation的縮寫)是一種用於資料交換的文字格式,2001年由Douglas Crockford提出,目的是取代繁瑣笨重的XML格式。

  • 相比XML格式,JSON格式有兩個顯著的優點:書寫簡單,一目瞭然;符合JavaScript原生語法,可以由解釋引擎直接處理,不用另外新增解析程式碼。所以,JSON迅速被接受,已經成為各大網站交換資料的標準格式,並被寫入ECMAScript 5,成為標準的一部分。

  • 簡單說,每個JSON物件,就是一個值。要麼是簡單型別的值,要麼是複合型別的值,但是隻能是一個值,不能是兩個或更多的值。這就是說,每個JSON文件只能包含一個值。
    JSON對值的型別和格式有嚴格的規定。

  • JSON物件,其實就是JSON的值,基本要符合以下規則.

  • 複合型別的值只能是陣列或物件,不能是函式、正規表示式物件、日期物件。

  • 簡單型別的值只有四種:字串、數值(必須以十進位制表示)、布林值和null(不能使用NaN, Infinity, -Infinity和undefined)。

  • 字串必須使用雙引號表示,不能使用單引號。

  • 物件的鍵名必須放在雙引號裡面。

  • 陣列或物件最後一個成員的後面,不能加逗號

  • 什麼是 json 物件字面量?

  • 物件字面量其實就是一種簡單的描素以及宣告方式,如上面例舉的: var count = { "one": 1, "two": 2, "three": 3 }, 因為本身json就是JavaScript語法集的一種,所以json字面量就是用json格式的JavaScript物件字面量

  • 什麼是 JSON內建物件?

  • 經過JSON.parse()轉換的值;

11.如何把JSON 格式的字串轉換為物件?如何把物件轉換為 JSON 格式的字串?

  • 要實現從物件轉換為 JSON 字串,使用 JSON.stringify() 方法:

    var json = JSON.stringify({a: 'Hello', b: 'World'}); //結果是 '{"a": "Hello", "b": "World"}'
  • 要實現從 JSON 轉換為物件,使用 JSON.parse() 方法:

    var obj = JSON.parse('{"a": "Hello", "b": "World"}'); //結果是 {a: 'Hello', b: 'World'}



作者:飢人谷_米彌輪
連結:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2471/viewspace-2813749/,如需轉載,請註明出處,否則將追究法律責任。

相關文章