1.使用数组拼接出如下字符串 ,其中styles数组里的个数不定
var prod = {
name: '女装',
styles: ['短款', '冬季', '春装']
};
function getTpl(data){
var str='<dl class="product">'
str+="<dt>"+data.name+"</dt>"
for(var x in data.styles){
str+="<dd>"+data.styles[x]+"</dd>"
}
str+="</dl>"
return str
};
function getTpl2(data){
var str=[];
str.push('<dl class="product">')
str.push("<dt>"+data.name+"</dt>")
for(var i = 0; i < data.styles.length; i++){
str.push("<dd>"+data.styles[i]+"</dd>")
}
str.push("</dl>")
return str.join("")
}
var result = getTpl(prod);
var result = getTpl2(prod);
2.写出两种以上声明多行字符串的方法
第一种
var str = 'abcde\
abcde\
abcde\
ancde\
abcde\
abcde\
abcde\
ancde\
abcde\
abcde\
abcde\
ancde\
abcde\
abcde\
abcde\
ancde'
第二种
var str = "abcde "+
"abcde "+
"abcde "+
"ancde "+
"abcde "+
"abcde "+
"abcde "+
"ancde "+
"abcde "+
"abcde "+
"abcde "+
"ancde "+
"abcde "+
"abcde "+
"abcde "+
"ancde"
console.log(str)
第三种(太长了,用其他举例)
(function () { /*
abcd
abcd
abcd
*/}).toString().split('\n').slice(1,-1).join('')
3.补全如下代码,让输出结果为字符串: hello\饥人谷
var str = "hello\/\/饥人谷"
console.log(str)
4.以下代码输出什么?为什么
var str = 'jirengu\nruoyu'
console.log(str.length) //13个 转译\n 当一个字符
5.写一个函数,判断一个字符串是回文字符串,如 abcdcba是回文字符串, abcdcbb不是
function blackString(str){
if (str.split("").reverse().join("")===str) {
console.log("我是")
}else{
console.log("我不是")
}
}
var str1="abcdcba"
var str2="abcdcbb"
var str3="aabcdcbaa"
//console.log(str3===str3.split("").reverse().join(""))
//console.log(str1.split().reverse().join()==str1)
blackString(str1)
blackString(str2)
blackString(str3)
6.写一个函数,统计字符串里出现出现频率最多的字符
function fn(str){
var warp={}
var num=0
var maxValue;
for(var i = 0; i<str.length; i++){
if (warp[str[i]]) {
warp[str[i]]++
}else{
warp[str[i]]=1
}
}
for(var x in warp){
if (warp[x]>num) {
num=warp[x]
maxValue=x
}
}
console.log(maxValue)
}
fn("bbaaajjoooo")
7.写一个camelize函数,把my-short-string形式的字符串转化成myShortString形式的字符串,如
function camelize(str) {
var wrap=str.split("-");
for(var i=1;i<wrap.length;i++){
wrap[i]=wrap[i][0].toUpperCase()+wrap[i].substr(1)
}
console.log(wrap.join(""))
}
camelize("background-color") //== 'backgroundColor'
camelize("list-style-image") //== 'listStyleImage'
8.写一个 ucFirst函数,返回第一个字母为大写的字符
function camelize(str) {
console.log(str[0].toUpperCase()+str.substring(1))
}
camelize("string")
9.写一个函数truncate(str, maxlength), 如果str的长度大于maxlength,会把str截断到maxlength长,并加上...,如
function truncate(str, maxlength){
if (str.length>maxlength) {
console.log(str.substr(0,maxlength)+'...')
}else{
console.log(str)
}
}
truncate("string123123123456", 10)