J5

作者: Cart86 | 来源:发表于2017-11-09 21:31 被阅读0次

1.对于 HTTP 协议而言,HTML、CSS、JS、JSON 的本质都是什么?

对于HTTP协议,HTML、CSS、JS、JSON都是符合相应语法的字符串。

2.使用数组拼接出如下字符串 ,其中styles数组里的个数不定

        var prod = {
            name: '女装',
            styles: ['短装', '冬装', '春装']
        };
        function getTpl(data){
            var str = '<dl class="product">';
            str+="<dt>"+data.name +"</dt>"
            for(var i=0; i<data.styles.length; i++){
                str+='<dd>'+data.styles[i]+'</dd>'
        }
        str += '</dl>';
        return str;
        };
        getTpl(prod)
        var result = getTpl(prod)

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

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

        <script>
                var str = "你好\n\
                        World\n\
                        !";
                console.log(str);
        </script>
  •       <script>
                  var str = "你好\nWorld!"
          console.log(str);
          </script>
    

补全如下代码,让输出结果为字符串: hello\饥人谷.

        var str1 = 'hello\\'
        var str2 = '\\饥人谷'
        var str = str1 + str2
        console.log(str)
  •       var str = 'hello\\\\饥人谷'
          console.log(str)
    

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

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

13 因为存在转义符 \n作为一个整体占据一个位置,所以结果是13.

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

        <script>
                var str = "abcdcba";
                var obj = str.split('').reverse().join('');
                if(obj === str) {
                    console.log(true);
                }
        </script>

写一个camelize函数,把my-short-string形式的字符串转化成myShortString形式的字符串

          function camelize(str){
            var arr = str.split('-');
            for (var i = 1; i < arr.length; i++){
                arr[i] = arr[i].replace(arr[i][0],arr[i][0].toUpperCase());
            }
            return arr.join('');
        }
        console.log(camelize("list-style-image"))

写一个 ucFirst函数,返回第一个字母为大写的字符.

       function ucFirst(str){
return str[0].toUpperCase()+str.slice(1).toLowerCase();

}
console.log(ucFirst("hunger"))

写一个函数truncate(str, maxlength), 如果str的长度大于maxlength,会把str截断到maxlength长,并加上...,

                var str = "hello, this is hunger valley";
                function truncate (obj,num){
                    if(obj.length>num){
                        var arr = obj.split('');
                        arr.splice(num,obj.length-num,"....");
                        return arr.join('');
                    }
                    return obj;
                }
                console.log(truncate(str,10));

什么是 JSON格式数据?JSON格式数据如何表示对象?window.JSON 是什么?

JSON格式(JavaScriot Object Notation 的缩写)是一种用于数据交换的文本格式,2001年由Douglas Crockford提出,目的是取代繁琐笨重的XML格式。
相比XML格式,JSON格式有两个显著的优点:书写简单,一目了然;符合JavaScript原生语法,可以由解释引擎直接处理,不用另外添加解析代码。所以,JSON迅速被接受,已经成为各大网站交换数据的标准格式,并被写入ECMAScript5,成为标准的一部分。
简单说,每个JSON对象,就是一个值。要么是简单类型的值,要么是复合类型的值,但是只能是一个值,不能是两个或更多的值。这就是说,每个JSON文档只能包含一个值。
JSON对值的类型和格式有严格的规定。

JSON对象其实就是JSON的值,基本要符合以下规则
复合类型的值只能是数组或对象,不能是函数、正则表达式对象、日起对象。
简单类型的值只有四种:字符串、数值(必须以十进制表示)、布尔值和null(不能使用NaN、Infinity和undefined)。
字符串必须使用双引号表示,不能使用单引号。
对象的键名必须放在双引号里面。
数组或对象最后一个成员的后面,不能加逗号
<script>
["123", "one"]
{"names": ["Cart","Steef"]}
</script>

什么是JSON对象的字面量

对象字面量其实是一种简单的描述以及声明方式,如上面例子的 var count = {"names": ["Cart","Steef"]},因为本身JSON就是JavaScript语法集的一种,所以JSON字面量就是用JSON格式的JavaScript对象字面量。

把JSON格式的字符串转换为JS对象 parse
var str = '{ "name":"alutier","age":"24"}'
var obj = JSON.parse(str)

console.log(obj)
把js对象转换为JSON格式的字符串 infoString
var info = '{"name":"alutier","age":"24","sex","male"}'
var infoString = JSON.stringify(info)

console.log(infoString)

相关文章

网友评论

      本文标题:J5

      本文链接:https://www.haomeiwen.com/subject/jvwluxtx.html