美文网首页
字符串与JSON

字符串与JSON

作者: 向前冲冲的蜗牛 | 来源:发表于2017-09-22 18:09 被阅读0次
    0、对于 HTTP 协议而言,HTML、CSS、JS、JSON 的本质都是什么?

    对于HTTP协议而言,,HTML、CSS、JS、JSON 的本质都是都是一堆字符串。
    Content-Type=text/html,浏览器就把字符串当HTML进行解析;
    Content-Type=text/css,浏览器就把字符串当css进行解析;
    Content-Type=application/x-javascript,浏览器就把字符串当javascript进行解析;
    参考链接

    1、使用数组拼接出如下字符串 ,其中styles数组里的个数不定
    var prod = {
        name: '女装',
        styles: ['短款', '冬季', '春装']
    };
    function getTpl(data){
    var str='<dl class='+'"'+"products"+'"'+">"+"<dt>"+data.name+"</dt>";
    var styles=data.styles;
    for(var i=0;i<styles.length;i++)
    {
     str+="<dt>"+styles[i]+"</dt>";
    }
    str+="</dl>"
    return str;
    };
    var result = getTpl(prod);  //result为下面的字符串
    
    显示结果.png
    2、写出两种以上声明多行字符串的方法

    例如:

    var str = 'abcdeabcdeabcdeancdeabcdeabcdeabcdeancdeabcdeabcdeabcdeancdeabcdeabcdeabcdeancde'
    

    方法如下:

    //方法1
    var str = 'abcdeabcde\
      abcdeancdeabcde\
      abcdeabcdeancde\
      abcdeabcdeabcde\
      ancdeabcdeabcde\
      abcdeancde'
    
    image.png
    //方法2
    var str = ' abcdeabcde'
    +' abcdeancdeabcde'
    +' abcdeabcdeancde'
    +' abcdeabcdeabcde'
    +' ancdeabcdeabcde'
    +' abcdeancde'
    
    image.png
    3、补全如下代码,让输出结果为字符串: hello\饥人谷
    var str = //补全代码
    console.log(str)
    
    var str = "hello\\\\饥人谷"
    console.log(str)
    
    image.png
    4、以下代码输出什么?为什么
    var str = 'jirengu\nruoyu'
    console.log(str.length)
    

    结果是13,因为\n是换行符号,\n只能算一个字符

    5、写一个函数,判断一个字符串是回文字符串,如 abcdcba是回文字符串, abcdcbb不是
    function palindrome(str)
    {
       var newStr=str.split("").reverse().join("");
       if(newStr===str)
       {
         return str+"是回文字符串";
       }
      else
      {
           return str+"不是回文序列";
      }
    }
    
    image.png
    6、写一个函数,统计字符串里出现出现频率最多的字符
    //注意当每个元素出现的次数相等的时候,就是max为1的时候
    function charRep(str)
    {
      var max=0;
      var repMaxchar;
      var f={};
      var sum=0
      for(var i=0;i<str.length;i++)
      {
        var a=str[i];
        if(f[a]===undefined)
        {
          f[a]=1;
        }
        else
        {
          f[a]++;
        }
        if(f[a]>=max)
        {
          max=f[a];
          repMaxchar=a;
        }
        sum+=f[a];
      }
      if(max==1)
      {
        return "每个元素出现的次数相同"
      }
      else 
      {
        return repMaxchar+"出现"+max+" 次";
      }
    }
    
    image.png
    7、写一个camelize函数,把my-short-string形式的字符串转化成myShortString形式的字符串,如
    function show(str)
    {
      var newStr=str.split("-").join("");
      return newStr;
    }
    
    image.png
    8、写一个 ucFirst函数,返回第一个字母为大写的字符 (***)
    ucFirst("hunger") == "Hunger"
    

    代码如下

    function  ucFirs(str)
    {  var newStr=str[0].toUpperCase();
      for(var i=1;i<str.length;i++)
      {
        newStr+=str[i];
      }
      return newStr;
    }
    
    image.png
    9、写一个函数truncate(str, maxlength), 如果str的长度大于maxlength,会把str截断到maxlength长,并加上...,如
    truncate("hello, this is hunger valley,", 10) == "hello, thi...";
    truncate("hello world", 20) == "hello world"
    

    代码如下:

     function truncate(str, maxlength)
    {  var newStr;
      if(maxlength>str.length)
      {
        maxlength=str.length;
        newStr=str.substr(0,maxlength);
    
      }
     else
       {
         newStr=str.substr(0,maxlength)+"...";
       }
       return newStr;
    }
    
    image.png
    10、什么是 JSON格式数据?JSON格式数据如何表示对象?window.JSON 是什么?

    JSON格式是一种用于数据交换的文本格式。

    JSON格式表示对象是对象的属性都加上双引号

    JSON对象格式.png
    window.JSON:

    window.JSON是ECMAScript 5定义的一个原生的浏览器内置对象,用来检测对JSON的支持情况;

    JSON对象内置了JSON.parse()和JSON.stringify()方法;

    当HTML页面指定了DOCTYPE且浏览器模式为IE8时,才支持内置的window.JSON对象,IE8版本以上才内置支持JSON.parse()函数方法

    11、如何把JSON 格式的字符串转换为 JS 对象?如何把 JS对象转换为 JSON 格式的字符串?

    JSON.parse方法用于将JSON字符串转化成对象


    image.png

    JSON.stringify():JSON.stringify方法用于将一个值转为字符串。该字符串符合 JSON 格式,并且可以被JSON.parse方法还原。

    image.png

    相关文章

      网友评论

          本文标题:字符串与JSON

          本文链接:https://www.haomeiwen.com/subject/gdqfextx.html