文章目录
javascript是一门什么样的语言?有何特性?
- 浏览器上运行,跨平台
- 不用预编译,
- 直接解析执行代码,
- 弱类型语言,
- 解释性脚本语言
简要描述javascript原型和继承
JavaScript继承可以说是发生在对象与对象之间,而原型链则是实现继承的主要方法;利用原型让一引用类型继承另一个引用类型的属性和方法。
请用最简洁的代码实现一个闭包
function fnc(){
var a = 0;
return function(){
a++;
}
}
下列代码输出结果(一):
(function(){
var a=b=5;
})()
console.log(b)
输出结果:5
说明:var a=b=5;相当于b = 5;var a = b; 在function内使用var声明的,只在该函数作用域内有效,不使用var声明的,则解析为全局变量
下列代码输出结果(二):
var a = 1;
var obj = {
a:2,
data:{
a:3,
func: function(){
return this.a;
}
}
}
console.log(obj.data.func())
输出结果:3
说明:调用当前func方法的是obj.data,this指向obj.data内部,所以打印为3。
下列代码输出结果(三):
for(var i=1;i<=3;i++){
setTimeout(function(){
console.log(i)
},0)
}
输出结果:4 4 4
setTimeout不是立即执行的函数,所以循环3次后,i 变成了4,跳出循环setTimeout 才执行,打印三个4
javascript 中有几种弹出框?
alert()警告框,conform()询问框,prompt()带输入框的弹窗框
获取随机证书(min:10,max:100)
Math.round(Math.random()*90)+10
为数字添加千位分隔符,如123456得123,456
function getTNum(num){
if(typeof num !== 'number')return;
var arr = num.toString().split('').reverse();
for(var i=0;i<arr.length;i++){
if(i && i%3==0){
arr[i] = arr[i]+',';
}
}
return arr.reverse().join('');
}
console.log(getTNum(10010010101010))
输出结果:10,010,010,101,010