多行字符串声明的常见编写方式有哪些? 如果必须将长字符串分成多行,则可以在每行末尾使用反斜杠。
var longString = "Long
long
long
string";
连接运算符(+)可以连接多个单行字符串来模拟多行字符串。
var longString = 'Long ' +
'long ' +
'long ' +
'string';
下面的代码输出什么? 如何声明str让console.log(str)输出C:UsersDocumentnodeindex.js?
var str = 'C:UsersDocumentnodeindex.js'
console.log(str.length)
对于字符串varstr='hellobaidgu.com'获取str下标为3的字符获取str下标为4的字符的Ascii码,截取字符g到字符串末尾,以字符o开头javascript 字符串 日期,截取长度为4个字符的字符 获取字符串中第一个l的下标,编写函数生成随机IP地址。 合法的IP地址是0.0.0.0~255.255.255.255。
function getRandIP(){
var a=''
for(var i=0;i<4;i++){
a=a+Math.floor(256*Math.random())+'.'
}
a=a.slice(0,-1);
return a
}
var ip = getRandIP()
console.log(ip) //63.120.52.131
编写一个函数,生成随机颜色字符串,合法颜色为#000000~#ffffff。
function getRandColor(){
var a=''
for(var i=0;i<6;i++){
a=a+Math.floor(16*Math.random()).toString(16)
}
return "#"+a
}
var color = getRandColor()
console.log(color) // #d89e4b
编写一个函数,返回一个从 min 到 max 的随机整数,包括 min 但不包括 max。
function retnumber(max,min){
if(max>min){
return Math.ceil(min)+Math.floor((Math.floor(max)-Math.ceil(min))*Math.random());}
else{
return Math.ceil(max)+Math.floor((Math.floor(min)-Math.ceil(max))*Math.random());
}}
编写一个函数来生成宽度为 n 的随机字符串。 字符串中的字符范围包括0到9、a到z、A到Z。
function getRandStr(len){
var a=''
var b='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
for(var i=0;i<len;i++){a=a+b[Math.floor(Math.random()*b.length)]}
return a
}
var str = getRandStr(10); // FYZKjXnXeL
编写一个函数javascript 字符串 日期,其参数为时间对象的微秒的字符串格式,返回值为字符串。 假设参数为时间对象的微秒数t,则根据t的时间返回以下字符串:
function friendlyDate(time){
if(time/1000<60){
t='刚刚'
}
else if(time/1000/60<60){
t='3分钟前'
}
else if(time/(1000*60*60)<24){
t='8小时前'
}
else if(time/(1000*60*60*24)<30){
t='3天前'
}
else if(time/(1000*60*60*24*30)12){
t='八年前'
}
return t
}
实现一个reduce函数,其作用与原始reduce类似,类似于下面的反例。
var sum = reduce([1, 2, 3], function(memo, num){ return memo + num; }, 0); => 6
function reduce(list){
if(list.length==1){return list[0]}
else{list=([list[0]+list[1]]).concat(list.slice(2));return reduce(list)}
}
实现一个flatten函数,将多层嵌套的链表数组(链表)(嵌套可以任意层数)转换为只有一层的链表。 链表中的元素只是元素或链表的基本类型,不存在循环引用条件。
flatten([1, [2], [3, [[4]]]]) => [1, 2, 3, 4];
function flatten(list){
var newlist=[]
for(var i=0;i<list.length;i++){
if(Array.isArray(list[i])){newlist=newlist.concat(flatten(list[i]))}
else{newlist.push(list[i])}
}
return newlist
}