Webフロントエンド-js小記(5)-文字列およびjson

6351 ワード

0、HTTPプロトコルにとってHTML、CSS、JS、JSONの本質は何ですか?

  • HTTPプロトコルの場合、html、css、js、jsonは、対応する構文に適合する文字列である.
  • ユーザがページにアクセスすると、ブラウザはユーザの要求の経路に基づいてサーバに要求を開始し、サーバは経路に基づいて判断し、ブラウザに対応する文字列に戻るとともに、ブラウザContent-Type値にも戻る.
  • Content-Type=text/htmlで、ブラウザは文字列をHTMLとして解析します.HTMLにある場合、ブラウザはサーバに要求を開始し、サーバは文字列とContent-Type=text/cssを返し、ブラウザは戻った文字列をCSSとして解析する.HTMLにある場合、ブラウザがサーバに要求を開始し、サーバが文字列とContent-Type=text/javascriptを返すと、ブラウザは文字列をJSとして解析し、ユーザーに返す.


  • 1、配列を用いて次の文字列をつづり、styles配列の個数が不定である

    var prod = {
        name: '  ',
        styles: ['  ', '  ', '  ']
    };
    //   :    
    function getTplStr1(data){
    var str;
      for(var key in data){
        if(key==="name"){
          str='
    '+data[key]+'
    '; } else { for(var i=0;i"+data[key][i]+"" } } } str+="
    " return str; }; // : function getTplStr2(data){ var arr=[]; arr.push("
    "); arr.push("
    "+data.name+"
    "); for(var i=0;i"+data.styles[i]+""); } arr.push("
    "); return arr.join(""); } var result = getTplStr1(prod); //result var result1=getTplStr2(prod);

    2、複数行の文字列を宣言する2つの方法を書き出す

      :
    var str = 'abcdeabcdeabcdeancdeabcdeabcdeabcdeancdeabcdeabcdeabcdeancdeabcdeabcdeabcdeancde'
           ,         
    //   : + 
    var str="abcde"
          +"abcde"
          +"abcde"
    //   :   
    var str=(function(){/*
    abcde
    abcde
    abcde
    */}).toString().split("
    ").slice(1,-1).join("
    ") // : , var str="abcde\ abcde\ abcde\ " // : join() var arr=["abcde","abcde","abcde"] var str=arr.join("
    ")

    3、以下のコードを補完し、出力結果を文字列にする:hello飢人谷

    var str = "hello\\\\   "
    console.log(str)
    

    4、以下のコードは何を出力しますか?どうして

    var str = 'jirengu
    ruoyu' console.log(str.length) // 13, ,

    5、関数を書いて、1つの文字列が回文文字列であることを判断して、例えばabcdcbaは回文文字列で、abcdcbbはそうではありません

    function isPlalindrome(str){
      var result=str.split("").reverse().join("");
      if(result===str) {return console.log(true);}
      else return console.log(false);
    }
    var str1="abcdcba",str2="abcdcbb";
    var result1=isPlalindrome(str1);
    var result2=isPlalindrome(str2);
    

    6、1つの関数を書いて、統計文字列の中で出現頻度の最も多い文字

    function most(str){
      var join={},result=0,key1;
      for(var i=0;i

    7、camelize関数を書いて、my-short-string形式の文字列をmyShortString形式の文字列に変換して、例えば

    //   :    
    function camelize(str){
      var str1="";
      for(var i=0;i0){
          arr1.push(arr[i].replace(arr[i][0],arr[i][0].toUpperCase()))
        }
        else arr1.push(arr[i])
      }
      return arr1.join("")
    }
    var str1="background-color",str2="list-style-image";
    var result1=camelize(str1);
    var result2=camelize(str2);
    

    8、ucFirst関数を書いて、最初のアルファベットが大文字(***)を返します。

    //   :    
    function ucFirst1(str){
      var first=str[0].toUpperCase();
      var last=str.substr(1);
      return first+last;
    }
    //   :     
    function ucFirst2(str){
      var arr=[];
      arr=str.split("");
      arr[0]=arr[0].replace(arr[0],arr[0].toUpperCase());
      return arr.join("");
    }
    var result1=ucFirst1("hunger");
    var result2=ucFirst2("hunger");
    

    9、関数truncate(str,maxlength)を書きます。strの長さがmaxlengthより大きい場合、strをmaxlengthの長さに切断し、...、のように

    //   :     
    function truncate1(str,maxlength){
      var arr1, arr=str.split("");
      if(arr.length>maxlength){
        arr1=arr.slice(0,maxlength);
        arr1[maxlength]="..."
      }
      else arr1=arr;
      return arr1.join("");
    }
    //   :    
    function truncate2(str,maxlength){
      var str1="";
      if(str.length>maxlength){
        str1=str.slice(0,maxlength)+"..."
      }
      else {str1=str}
      return str1;
    }
    var result1=truncate1("hello, this is hunger valley,", 10) ;    //"hello, thi..."
    var result2=truncate1("hello world", 20);              //"hello world"
    var result3=truncate2("hello, this is hunger valley,", 10) ;    //"hello, thi..."
    var result4=truncate2("hello world", 20);              //"hello world"
    

    10、JSON形式データとは何ですか。JSON形式データはどのように対象を表しますか?window.JSONって何?11、JSON形式の文字列をどのようにJSオブジェクトに変換しますか?JSオブジェクトをJSON形式の文字列に変換するにはどうすればいいですか?


    1. JSONフォーマットデータ:javascript object notationの略称で、データ交換のためのテキストフォーマットであり、人が読みやすく、書きやすく、同時に機械の解析と生成も容易である.
    2. はどのようにオブジェクトを表しますか:1、名前/値のペア、名前/値のペアの組み合わせの名前は前に(二重引用符の中で)、値のペアは後ろに(同じ二重引用符の中で)、中間はコロンで区切られています.2、括弧でオブジェクトを保存する.3、角括弧保存配列
    var json1 = {"name": "Byron", "age": "24"}
    var json2 = [
        {"name": "Byron", "age": "24"}, 
        {"name": "Byron2", "age": "25"}
    ]
    

    1. window.JSONは何ですか:1、window.JSONはブラウザの内蔵オブジェクトであり、JSONのサポート状況を検出するために使用されます.2、JSONオブジェクトにJSONが内蔵されている.parse()、JSON.stringify().3、IE 8バージョン以上はJSONを内蔵サポートする.parse()関数メソッド.
    2. string jsオブジェクトへの変換方法:
    var str = '{"name": "Byron", "age": "24"}'
    var json=JSON.parse(str);    //{name: "Byron", age: "24"}
    

    1. jsオブジェクトをjsonに変換する文字列:
    var obj={name:"yaoyao",  age:21,  "235":"baxia"}
    var str=JSON.stringify(obj);   //"{"235":"baxia","name":"yaoyao","age":21}"
    

    (mission 5)