使用数组拼接出如下字符串
var prod = {
name: '女装',
styles: ['短款', '冬季', '春装']
};
function getTpl(data){
var arr = [];
arr.push("<dl class=\"product\">"+"\n");
arr.push("\t"+"<dt>"+data.name+"</dt>"+"\n");
for(var key in data.styles){
arr.push("\t"+"<dd>"+data.styles[key]+"</dd>"+"\n")
}
arr.push("</dl>");
return arr.join("")
};
var result = getTplStr(prod); //result为下面的字符串
/*<dl class="product">
<dt>女装</dt>
<dd>短款</dd>
<dd>冬季</dd>
<dd>春装</dd>
</dl>*/
写出两种以上声明多行字符串的方法
var str = "hello\
hello\
hello\"
;
var str = "hello"
+"hello"
+"hello";
(function(){/*
hello
hello
hello
*/}).tostring().split("\n").slice(1,-1).join("\n")
补全如下代码,让输出结果为字符串: hello\饥人谷
var str = "hello\\\\饥人谷";
console.log(str)
以下代码输出什么?为什么
var str = 'jirengu\nruoyu'
console.log(str.length)
//输出:13,因为\n为一个字符。
写一个函数,判断一个字符串是回文字符串,如 abcdcba是回文字符串, abcdcbb不是
function judge(str){
var newstr = str.split("").reverse().join("")
if(str === newstr){
console.log("yes!")
}
else{
console.log("no!")
}
}
写一个函数,统计字符串里出现出现频率最多的字符
function statistics(str){
var dict = {};
for(var i = 0;i<str.length;i++){
if(dict[str[i]]){
++dict[str[i]];
}
else{
dict[str[i]] = 1;
}
}
return dict;
}
写一个camelize函数,把my-short-string形式的字符串转化成myShortString形式的字符串,如
camelize("background-color") == 'backgroundColor'
camelize("list-style-image") == 'listStyleImage'
function camelize(str){
var dict = [];
var num = str.search("-");
for(var i = 0;i < str.length;i++){
if(str[i] !== "-"){
dict.push(str[i]);
}
else{
dict.push(str[i+1].toUpperCase());
i++;
}
}
var result = dict.join("");
return result
}
写一个 ucFirst函数,返回第一个字母为大写的字符 (***)
function ucFirst(str) {
var str1 = str[0].toUpperCase();
var str2 = str.replace(str[0],str1);
return str2;
}
ucFirst("hunger") == "Hunger"
写一个函数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,maxlength) {
if(str.length > maxlength){
var str1 = str.substr(0,maxlength)+"..."
}
return str1;
}
什么是 json?什么是 json 对象?什么是 json 对象字面量?什么是 JSON内置对象?
- JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成(网络传输速度)。
- JSON对象,其实就是JSON的值,基本要符合以下规则:
复合类型的值只能是数组或对象,不能是函数、正则表达式对象、日期对象。
简单类型的值只有四种:字符串、数值(必须以十进制表示)、布尔值和null(不能使用NaN, Infinity, -Infinity和undefined)。
字符串必须使用双引号表示,不能使用单引号。
对象的键名必须放在双引号里面。
数组或对象最后一个成员的后面,不能加逗号
- 对象字面量其实就是一种简单的描素以及声明方式, 因为本身json就是JavaScript语法集的一种,所以json字面量就是用json格式的JavaScript对象字面量
- 经过JSON.parse()转换的值;
如何把JSON 格式的字符串转换为对象?如何把对象转换为 JSON 格式的字符串?
- JSON.stringify(str)
- JSON.parse(JSON.stringify(str))