使用數(shù)組拼接出如下字符串
function getTplStr(data){
var arr = [];
arr.push("<dl class = \"product\">" + "\n");
arr.push("<dt>" + data.name + "</dt>" + "\n");
for(var i = 0;i<data.styles.length;i++){
arr.push("<dd>" + data.styles[i] + "</dd>" + "\n")
}
arr.push("</dl>");
return arr.join("")
};
寫出兩種以上聲明多行字符串的方法
1. 使用轉(zhuǎn)義字符:
var str1 = "hello \n jirengu"
console.log(str1)
2. 使用數(shù)組的join方法若锁,用"\n"把他們連接起來
var str = ["abc","dgb","dgh"];
var str1 = str.join("\n");
console.log(str1);
補(bǔ)全如下代碼,讓輸出結(jié)果為字符串: hello\饑人谷
var str = "hello\\饑人谷"http://補(bǔ)全代碼
console.log(str)
以下代碼輸出什么?為什么
var str = 'jirengu\nruoyu'
console.log(str.length)
輸出13,因為換行符算作一個字符
寫一個函數(shù)陌兑,判斷一個字符串是回文字符串逗宜,如 abcdcba是回文字符串, abcdcbb不是
function isPalindrome(str){
var oppiStr = str.split("").reverse().join("")
return str === oppiStr
}
寫一個函數(shù)肴沫,統(tǒng)計字符串里出現(xiàn)出現(xiàn)頻率最多的字符
function findMost(str){
var obj = {};
for(var i = 0;i<str.length;i++){
if(obj[str[i]]){
obj[str[i]]++;
}else {
obj[str[i]] = 1;
}
}
var count = 0;
var letter = "";
for(var key in obj){
if(obj[key]>count){
count = obj[key];
letter = key;
}
}
return letter + ":" +count
}
寫一個camelize函數(shù)歉井,把my-short-string形式的字符串轉(zhuǎn)化成myShortString形式的字符串兄淫,如
camelize("background-color") == 'backgroundColor'
camelize("list-style-image") == 'listStyleImage'
function camelize(str){
var pos = str.search("-");
if(pos === -1){
return str;
}
var newStr;
newStr = str.substring(0,pos) + str[pos+1].toUpperCase() + str.substring(pos+2);
console.log(newStr,"process");
return camelize(newStr);
}
camelize("list-style-image");
寫一個 ucFirst函數(shù)千元,返回第一個字母為大寫的字符 (***)
ucFirst("hunger") == "Hunger"
function tr(str){
str = str.replace(str[0],str[0].toUpperCase())
return str
}
寫一個函數(shù)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,num){
var len = str.length;
if(len<num){
return str
}
return str.slice(0,num) + "..."
}
什么是 json祟身?什么是 json 對象?什么是 json 對象字面量物独?什么是 JSON內(nèi)置對象袜硫?
- json(javascript object notation)的縮寫是一種用于數(shù)據(jù)交換的文本格式,目的是取代繁瑣的xml挡篓。具有書寫簡單婉陷,一目了然,符號javascript原生語法官研,可以由解釋引擎直接處理秽澳,不用另外添加解析代碼。所以戏羽,json迅速被接受担神,成為es5標(biāo)準(zhǔn)的一部分。
- json對象就是json的值始花,基本要符合以下規(guī)則
- 復(fù)合類型的值只能是數(shù)組或?qū)ο笸叮荒苁呛瘮?shù)、正則表達(dá)式對象衙荐、日期對象捞挥。
- 簡單類型的值只有四種:字符串、數(shù)值(必須以十進(jìn)制表示)忧吟、布爾值和null
字符串必須使用雙引號表示砌函,不能使用單引號
- 對象的鍵名必須放在雙引號里面
- 數(shù)組或?qū)ο笞詈笠粋€成員的后面,不能加逗號
- json對象字面量是一種簡單的描述以及聲明方式溜族。
- JSON是javascript中的內(nèi)置對象讹俊,提供了JSON.parse()、JSON.stringify()等方法煌抒。
如何把JSON 格式的字符串轉(zhuǎn)換為對象仍劈?如何把對象轉(zhuǎn)換為 JSON 格式的字符串?
var obj=JSON.parse(str),//轉(zhuǎn)為對象
var newstr=JSON.stringify(obj).//轉(zhuǎn)為字符串