美文网首页
字符串与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