1.JavaSciript中有几种数据类型?
基本数据类型:String
、Number
、Boolean
、Null
、Undefined
、Symbol
、BigInt
引用数据类型:Object
2.
用JavaScript写一个动态的格式为..年..月..日..时..分..秒的方法
function updateTime() {
const now = new Date();
const year = now.getFullYear();
const month = String(now.getMonth() + 1).padStart(2, '0'); // 月份从0开始,需要加1并补零
const day = String(now.getDate()).padStart(2, '0');
const hours = String(now.getHours()).padStart(2, '0');
const minutes = String(now.getMinutes()).padStart(2, '0');
const seconds = String(now.getSeconds()).padStart(2, '0');
const formattedTime = `${year}年${month}月${day}日 ${hours}时${minutes}分${seconds}秒`;
document.getElementById('timeDisplay').textContent = formattedTime;
}
// 初始调用
updateTime();
// 每秒更新一次
setInterval(updateTime, 1000);
3.JavaScript 如何让alert弹出框中的信息换行
利用 \n
来实现换行;
alert('你你你\n好好好\n啊啊啊')
4.JavaScript 选项卡的标签栏或者一排单选按钮,如何知道选择是第几个?
var oInputs = document.getElementsByTagName('input');
for (let index = 0; index < oInputs.length; index++) {
(function (index) {
oInputs[index].onclick = function () {
alert(index + 1)
}
})(index)
}
5.JavaScript 实现如下语法的功能 var a=(5).plus(3).minus(6);
Number.prototype.plus = function (n) {
return this + n;
}
Number.prototype.minus = function (n) {
return this - n;
}
var a = (5).plus(3).minus(6);
console.log(a);
6.JavaScript 实现输出document对象中所有成员的名称和类型
<script language="javascript">
for(key in document){
document.write(key +' : '+ document[key]+'<br />');
}
</script>
7.JavaScript 实现预加载一张图片,加载完成后显示在网页中并设定其高度为50px;宽度为50
<img id ='imgObj' src='https://a.axihe.com/assets/img/anbang-weixin.jpg'/>
<script>
var imgObj = document.getElementById('imgObj');
function addImg (tempSrc) {
var imgObj1 = new Image();
imgObj1.src = tempSrc;
imgObj1.onload = function () {
imgObj.src = this.src;
imgObj.height = 50;
imgObj.width = 50;
}
}
addImg('https://a.axihe.com/assets/img/bilibili.jpg');//这里是真正的显示文件
</script>
8.js判断数据类型?
基本数据类型:typeof
var num=9;
console.log(typeof num);
复杂数据类型:inctanceof
var aNum=[1,3];
console.log(aNum instanceof Array);
还可以toString:
function getType(value) {
return Object.prototype.toString.call(value)
}
console.log(getType([])); // "array"
9.js闭包是什么?有什么优缺点?
1. 闭包是什么
闭包是一个函数加上到创建函数的作用域的连接,闭包“关闭”了函数的自由变量。
2. 闭包可以解决什么问题【闭包的优点】
2.1 内部函数可以访问到外部函数的局部变量
2.2 闭包可以解决的问题
var lis = document.getElementsByTagName('li');
for(var i=0;i<lis.length;i++){
(function(i){
lis[i].onclick = function(){
alert(i);
}
})(i)
}
3. 闭包的缺点
3.1 变量会驻留在内存中,造成内存损耗问题。
解决:把闭包的函数设置为null
3.2 内存泄漏【ie】 ==> 可说可不说,如果说一定要提到ie
10.js中new操作符具体做了什么?
- 创建一个空对象,并且 this 变量引用该对象,同时还继承了该函数的原型
- 属性和方法被加入到 this 引用的对象中
- 新创建的对象由 this 所引用,并且最后隐式的返回 this
var obj = {};
obj.__proto__ = Base.prototype;
Base.call(obj);
11.对json的了解?
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。
它是基于JavaScript的一个子集。
数据格式简单, 易于读写, 传输占用带宽小。JSON对象包含两个方法: 用于解析 JSON 的 parse()
方法,以及将对象/值转换为 JSON字符串的 stringify()
方法。
除了这两个方法, JSON这个对象本身并没有其他作用,也不能被调用或者作为构造函数调用。
{
"age":"12",
"name":"back"
}
12.JavaScript document.write 和 innerHTML的区别;
-
document.write 只能重绘整个页面
-
innerHTML 可以重绘页面的一部分