一、检查一个值是否NaN?
function isNumber(x) {
if (isNaN(x)) {
console.log("Not a number");
} else {
console.log("Number")
}
}
二、有如下函数:
sum(2,3) =>5;
sum(2)(3)=>5;
请写出sum函数的具体实现。
function sum(a, c) {
if (isNaN(c)) {
return function(b) {
return a + b;
}
}
return a + c;
}
三、编写函数计算从整数1到n共出现多少个0。
function find(n) {
var box = [];
var temp = 0;
for (var i = 1; i <= n; i++) {
box.push(i);
}
for(var i=0;i<box.length;i++){
if (box[i].toString().match(/0/) == 0) {
temp +=box[i].toString().match(/0/g).length
}
}
console.log("从整数1到" + n + "共出现了" + temp + "个0")
}
find(100);
四、使用JavaScript的prototype实现一个简单的继承例子。
function Dog(breed){
this.breed = breed;
}
var buddy = new Dog("hashiqi");
Dot.prototype.bark = function(){
console.log("woof");
}
buddy.bark();
var snoopy = new Dog("Beagle");
snoopy.bark();
五、编写一个JavaScript函数,实现从数组里清楚重复的元素。【算法、字符串操作】
Array.prototype.unique=function(){
for(var i = 0; i < this.length; i++){
if(temp.indexOf(this[i]) == -1){
temp.push(this[i]);
}
}
return temp;
}
六、包含对象的数组转换成字符串。
var obj = [{
name: 'xiaoming',
'age': 18
}, {
name: 'xiaohong',
'age': 17
}];
这么一个包含对象的数组,要求通过一个var_dump(obj)函数,输出
"[{"name":"xiaoming","age":18},{"name":"xiaohong","age":17}]"
这样的字符串。对于只听过,想过没真正接触过json的人来说,确实有点摸不清头脑啊,虽然知道思路,但是方法什么的的确不熟。
我的思路大体是先把对象转换成字符串,再把字符串组成新的数组,输出的时候两边加上的方括号。
var obj = [{
name: 'xiaoming',
'age': 18
}, {
name: 'xiaohong',
'age': 17
}];
var var_dump = function(obj) {
var arr = [];
for (var i = 0; i < obj.length; i++) {
//对象转换成字符串,有个JSON的方法,以前没接触,通过这次题目也还是学习了。
newstr = JSON.stringify(obj[i]);
arr.push(newstr);
}
console.log("[" + arr.toString() + "]");
}
var_dump(obj);
七、obj序列化成JSON字符串。
已知obj变量定义如下:
let obj = {};
let a=1;
let b=1;
Object.assign(obj,{a,b,obj});
请将obj序列化成json字符串:
{
"a":1,
"b":1
}
第一次看到let这么一个关键词,还不是太明白,我是用var这么写的。
var obj = {};
var a=1;
var b=1;
var obj = Object.assign({a,b});
var test2 = JSON.stringify(obj);//JSON自带将对象转JSON字符串的方法
console.log(obj,test2);
这里还是要推荐下小编的web前端学习 群 : 581286372,不管你是小白还是大牛,小编我都欢迎,不定期分享干货,包括 小编自己整理的一份最新的web前端资料和0基础入门教程,欢迎初学和进 阶中的小伙伴。在不忙的时间我会给大家解惑。

3894

被折叠的 条评论
为什么被折叠?



