字符串與json

0.對于 HTTP 協(xié)議而言,HTML、CSS、JS、JSON 的本質(zhì)都是什么?

  • 對于HTTP協(xié)議而言,html、css、js、json是符合相應(yīng)語法的字符串。
  • 用戶訪問頁面時,瀏覽器根據(jù)用戶的請求的路徑,向服務(wù)器發(fā)起請求,服務(wù)器根據(jù)路徑進(jìn)行判斷,返回給瀏覽器對應(yīng)的字符串,同時也返回給瀏覽器Content-Type值。
  • Content-Type=text/html,瀏覽器就把字符串當(dāng)HTML進(jìn)行解析;當(dāng)HTML中有<link rel="stylesheet" href="" />,瀏覽器再向服務(wù)器發(fā)起請求,服務(wù)器返回字符串和Content-Type=text/css,瀏覽器就把返回的字符串當(dāng)CSS進(jìn)行解析;當(dāng)HTML中有<script src="" />,瀏覽器向服務(wù)器發(fā)起請求,服務(wù)器返回字符串和Content-Type=text/javascript,瀏覽器就把字符串當(dāng)JS進(jìn)行解析,返回給用戶。

1.使用數(shù)組拼接出如下字符串 ,其中styles數(shù)組里的個數(shù)不定

var prod = {
    name: '女裝',
    styles: ['短款', '冬季', '春裝']
};
function get(data){
    var arr=[];
    for(var key in prod){
        if(typeof prod[key]!=='object'){
            var str="<dt>"+prod[key]+"</dt>"
            arr.push(str)
    }else{
        for(var i=0;i<prod.styles.length;i++){
            var nstr='<dd>'+prod.styles[i]+'</dd>'
            arr.push(nstr)
        }
    }
}
var result='<dl class="product">'+arr.join("")+'</dl>'
return result
}
var final = get(prod)
console.log(final)

2.寫出兩種以上聲明多行字符串的方法

//方法一
var str = 'abcdeabcdeabcdeancdea\
bcdeabcdeabcdeancdeabcdeabcdeabc\
deancdeabcdeabcdeabcdeancde'
//方法二
var str = 'abcdeabcdeabcdeancdea'+
'bcdeabcdeabcdeancdeabcdeabcdeabc'+
'deancdeabcdeabcdeabcdeancde'

3.補(bǔ)全如下代碼,讓輸出結(jié)果為字符串: hello\饑人谷

var str =("hello\\\\饑人谷")
console.log(str)

4.以下代碼輸出什么?為什么

image.png

字符長度為13,\n為換行符,占據(jù)一個字符的長度。

5.寫一個函數(shù),判斷一個字符串是回文字符串

var a = "abcdcba"
function isReverse(str){
  if (str === str.split("").reverse().join("")) {
    return true
  }else{
    return false
  }
}
console.log(isReverse(a))

6.寫一個函數(shù),統(tǒng)計字符串里出現(xiàn)出現(xiàn)頻率最多的字符

var str = "hello world, ji ren gu haha haha lol"
var dirct = []
for (var i = 0;i<str.length; i++) {
  if (dirct[str[i]]) {
    ++dirct[str[i]]
  }else{
    dirct[str[i]]=1
  }
}
var count = 0
var maxvalue
for (key in dirct){
  if (dirct[key]>count) {
    maxvalue=key
    count=dirct[key]
  }
}
console.log(count,maxvalue)

7.寫一個camelize函數(shù),把my-short-string形式的字符串轉(zhuǎn)化成myShortString形式的字符串

function camelize(str){
   var nstr=[]
   for (var i = 0;i<str.length;i++) {
    nstr[i]=str[i]      //拷貝字符串
   }
   for (var i = 0;i<nstr.length;i++) {
    if (nstr[i]==="-") {
      nstr[i+1]=nstr[i+1].toUpperCase()
    }  //"-"后一個字母大寫
   }
   nstr=nstr.join("").split("-").join("");
   //剔除"-"
   return nstr;
 }

8.寫一個 ucFirst函數(shù),返回第一個字母為大寫的字符

function ucFirst(str){
  var nstr=str.split("")
  nstr[0]=nstr[0].toUpperCase()
  return nstr.join("")
}
//ucFirst("hunger") =="Hunger"

9.寫一個函數(shù)truncate(str, maxlength), 如果str的長度大于maxlength,會把str截斷到maxlength長,并加上...

test

10.什么是 JSON格式數(shù)據(jù)?JSON格式數(shù)據(jù)如何表示對象?window.JSON 是什么?

  • JSON(JavaScript Object Notation) 是一種輕量級的數(shù)據(jù)交換格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一個子集。 JSON采用完全獨立于語言的文本格式,但是也使用了類似于C語言家族的習(xí)慣(包括C, C++, C#, Java, JavaScript, Perl, Python等)。這些特性使JSON成為理想的數(shù)據(jù)交換語言。 易于人閱讀和編寫,同時也易于機(jī)器解析和生成(網(wǎng)絡(luò)傳輸速度)。
  • JSON格式數(shù)據(jù)表示對象
{"name": "chenshangshuo","age": 25,"school": {"name": "Nanjing University of Technology","location": "Nanjing"}}
  • window.JSON 是window下的一個json對象

11、如何把JSON 格式的字符串轉(zhuǎn)換為 JS 對象?如何把 JS對象轉(zhuǎn)換為 JSON 格式的字符串?

  • JSON.parse()JSON格式轉(zhuǎn)換為JS對象
var a ='{"name": "chenshangshuo","age": 25,"school": {"name": "Nanjing University of Technology","location": "Nanjing"}}'
JSON.parse(a)
  • JSON.stringify()JS對象轉(zhuǎn)換為JSON格式
var b={name:"chenshangshuo",age: 25}
JSON.stringify(b)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 0、對于 HTTP 協(xié)議而言,HTML、CSS、JS、JSON 的本質(zhì)都是什么? HTML就是符合HTML語法的字...
    怎么昵稱閱讀 1,680評論 0 3
  • 0、對于 HTTP 協(xié)議而言,HTML、CSS、JS、JSON 的本質(zhì)都是什么? 1.對于HTTP協(xié)議而言,htm...
    saintkl閱讀 637評論 0 0
  • 一.使用數(shù)組拼接出如下字符串var prod = { name: '女裝', styles: ['短款', '冬季...
    邵志遠(yuǎn)閱讀 296評論 0 0
  • 什么是JSON?什么是JSON語言?JSON 語言如何表示對象?window.JSON 是什么?如何把JSON 格...
    LeeoZz閱讀 575評論 0 0
  • 0、對于 HTTP 協(xié)議而言,HTML、CSS、JS、JSON 的本質(zhì)都是什么? 對于HTTP協(xié)議而言,html、...
    cross_王閱讀 309評論 0 0

友情鏈接更多精彩內(nèi)容