搜索
您的当前位置:首页正文

2016-01-10

来源:哗拓教育

1. 使用数组拼接出如下字符串

var prod = {
    name: '女装',
    styles: ['短款', '冬季', '春装']
};
function getTplStr(data){
//todo...
    var dt;
    var dd = [];
    var display;
    for(var key in data){
        if(typeof data[key] === 'object'){
            for(var x in data[key]){
                dd.push("<dd>"+data[key][x]+"</dd>");
            }
        } else {
            dt ="<dt>"+data[key]+"</dt>"
        }
    }
    display = "<dl class=\"product\">"
        +dt
        +dd[0]
        +dd[1]
        +dd[2]
        +"</dl>";
    
    return display;
};
var result = getTplStr(prod);  //result为下面的字符串

<dl class="product">
    <dt>女装</dt>
    <dd>短款</dd>
    <dd>冬季</dd>
    <dd>春装</dd>
</dl>

2. 写出两种以上声明多行字符串的方法

  • 在每行末尾使用反斜杠
var longString = "Long \
long \
long \
string";
longString
// "Long long long string"
  • 使用'+'字符串连接运算符连接多行字符串
var longString = 'Long '
  + 'long '
  + 'long '
  + 'string';

3. 以下代码输出什么?为什么

var str = 'jirengu\nruoyu'
console.log(str.length)//13

\n是一个字符

4. 写一个函数,判断一个字符串是回文字符串,如 abcdcba是回文字符串, abcdcbb不是

var a = "abcdcba";
var b = "abcdccc";
function detectPal(str){
    return (str.split("").reverse().join("") == str)
    //返回 true是回文,false不是回文
}
console.log(detectPal(a));//true
console.log(detectPal(b));//false

5. 写一个函数,统计字符串里出现出现频率最多的字符(如果有多个都需要展示)

    function detectMax(str){
        var sta = {};
        var arr = str.split("");
        //拆分字符串,并分别统计个数
        for(var x in arr){
            if(!sta.hasOwnProperty(arr[x])){
                sta[arr[x]] = 1;
            }else{
                sta[arr[x]] += 1;
            }
        }
        //找出个数最多的字符
        var num=0;
        var charMax = [];
        for (var key in sta){
            if(sta[key]>num){
                num = sta[key];
                charMax = []
                charMax[0] = key;
            }else if(sta[key] == num){
                charMax.push(key);
            }
        }

        var result = {"charMax":charMax,"number":num};
        return result;
    }
    console.log(detectMax("hello world ooooo"));

6. 写一个camelize函数,把my-short-string形式的字符串转化成myShortString形式的字符串,如 (***)

camelize("background-color") == 'backgroundColor'
camelize("list-style-image") == 'listStyleImage'
function camelize(str){
    var strArr = str.split("-");
    // console.log(strArr[0]);
    for (var i=0;i<strArr.length; i++){
        if(i===0) continue;
        var letter = strArr[i].split("");
        letter[0] = letter[0].toUpperCase();
        strArr[i] = letter.join('');
        // console.log(strArr[i])
    }

    return strArr.join('');
}
Top