前端面试题--持续更新

news/2024/7/19 16:42:40 标签: js, 前端, web
webkit-tap-highlight-color: rgba(0, 0, 0, 0);">

1、css隐藏元素的四种方法
(1).opacity
opacity是设置一个元素的透明度,这一设置为0只能从视觉上隐藏元素,而元素本身依然占据它自己的位置并对网页的布局起作用,它也将响应用户交互。

(2).visibility
该属性值为hidden的时候,元素将会隐藏,也会占据着自己的位置,并对网页的布局起作用,与 opacity 唯一不同的是它不会响应任何用户交互。此外,元素在读屏软件中也会被隐藏。如果一个元素的 visibility 被设置为 hidden,但是想要显示它的子元素,只要给想要显示的子元素添加visibility:visible;就可以了

(3).dispaly
该属性才是真正意义上的隐藏元素,当元素的display属性为none时,该元素就会就会从视觉中消失,并且连盒模型也不生成.也不会在页面占据任何位置,不但如此,就连它的子元素也会一同从盒子模型中消失。给他和它的子元素添加的任何动画效果交互效果都会不起作用。jq中的show(),hide(),toggle()方法就是通过改变display的值来实现变化效果的。

(4).Position
该属性的意义就是把元素脱离文档流移出视觉区域,添加该属性后既不会影响布局,又能让元素保持可以操作。应用该属性后,主要就是通过控制方向(top,left,right,bottom),达到一定的值,离开当前可使页面。

原文链接:https://blog.csdn.net/weixin_41910848/article/details/81875725

2、JS定义变量的方法
(1)使用var的情况下:var定义的变量可以修改,如果不初始化会输出undefined,不会报错。

1 var a = 1;
2 // var a;//不会报错
3 console.log('函数外var定义a:' + a);//可以输出a=1
4 function change(){
5 a = 4;
6 console.log('函数内var定义a:' + a);//可以输出a=4
7 } 
8 change();
9 console.log('函数调用后var定义a为函数内部修改值:' + a);//可以输出a=4

(2)使用const的情况下:const定义的变量不可以修改,而且必须初始化,const定义的是一个恒定的常量

1 const b = 2;//正确
2 // const b;//错误,必须初始化 
3 console.log('函数外const定义b:' + b);//有输出值
4 // b = 5;
5 // console.log('函数外修改const定义b:' + b);//无法输出

(3)使用let的情况下:let是块级作用域,函数内部使用let定义后,对函数外部无影响。

1 let c = 3;
2 console.log('函数外let定义c:' + c);//输出c=3
3 function change(){
4 let c = 6;
5 console.log('函数内let定义c:' + c);//输出c=6
6 } 
7 change();
8 console.log('函数调用后let定义c不受函数内部定义影响:' + c);//输出c=3

转载于:https://www.cnblogs.com/ksl666/p/5944718.html

3、JavaScript 输出
(1)、JavaScript 输出
JavaScript 没有任何打印或者输出的函数。
(2)、JavaScript 显示数据
JavaScript 可以通过不同的方式来输出数据:

  1. 使用 window.alert() 弹出警告框:
    你可以弹出警告框来显示数据:
<!DOCTYPE html>
<html>
<body>

<h1>我的第一个页面</h1>
<p>我的第一个段落。</p>

<script>
window.alert(5 + 6);
</script>

</body>
</html>
  1. 使用 document.write() 方法将内容写到 HTML 文档中:
 <!DOCTYPE html>
<html>
<body>

<h1>我的第一个 Web 页面</h1>

<p>我的第一个段落。</p>

<script>
document.write(Date());
</script>

</body>
</html>

请使用 document.write() 仅仅向文档输出写内容。
如果在文档已完成加载后执行 document.write,整个 HTML 页面将被覆盖。
例如:

<!DOCTYPE html>
<html>
<body>

<h1>我的第一个 Web 页面</h1>

<p>我的第一个段落。</p>

<button onclick="myFunction()">点我</button>

<script>
function myFunction() {
    document.write(Date());
}
</script>

</body>
</html>
  1. 使用 innerHTML 写入到 HTML 元素:
    如需从 JavaScript 访问某个 HTML 元素,您可以使用 document.getElementById(id) 方法。
    请使用 “id” 属性来标识 HTML 元素,并 innerHTML 来获取或插入元素内容:
<!DOCTYPE html>
<html>
<body>

<h1>我的第一个 Web 页面</h1>

<p id="demo">我的第一个段落</p>

<script>
document.getElementById("demo").innerHTML = "段落已修改。";
</script>

</body>
</html>

以上 JavaScript 语句(在

document.getElementById(“demo”) 是使用 id 属性来查找 HTML 元素的 JavaScript 代码 。
innerHTML = “段落已修改。” 是用于修改元素的 HTML 内容(innerHTML)的 JavaScript 代码。

  1. 使用 console.log() 写入到浏览器的控制台。
    如果您的浏览器支持调试,你可以使用 console.log() 方法在浏览器中显示 JavaScript 值。浏览器中使用 F12 来启用调试模式, 在调试窗口中点击 “Console” 菜单。
<!DOCTYPE html>
<html>
<body>

<h1>我的第一个 Web 页面</h1>

<script>
a = 5;
b = 6;
c = a + b;
console.log(c);
</script>

</body>
</html>

内容转自:https://www.runoob.com/js/js-output.html


http://www.niftyadmin.cn/n/1011722.html

相关文章

恶意邮件假冒系统安全公告发送病毒,通过个人签名数字证书排除不明邮件干扰...

近来网上流传着一份自称是来自微软的安全电邮。这份电邮中带有一个可执行文件&#xff0c;声称是最新的安全补丁&#xff0c;并鼓励收到邮件的人运行这个可执行文件以便提高系统安全性。然而&#xff0c;该执行文件是恶意软件&#xff0c;很多不明真相的收件者中招&#xff0c;…

Android 对象型数据库 db4o

你有木有烦恼过数据库的crud&#xff0c;有木有对sql很烦躁&#xff0c;Android虽然有封装好的ContentProvider&#xff0c;但是操作还是有点复杂了。不是很喜欢。 这两天花时间整了下DB4O&#xff0c;确实很不错&#xff0c;不用建表&#xff0c;不用写sql&#xff0c;只要写好…

设计模式之adapter bridge模式

先说adapter模式 adapter中文为适配器模式&#xff0c;目的和想法很简单&#xff0c;就是一种封装&#xff0c;只不过这种封装是为了从接口A到达接口B&#xff0c;啥个意思呢&#xff0c;A已经提供功能了&#xff0c;但是另外一个东西只能使用B的接口&#xff0c;所以得弄一个…

Android Activity去除标题栏和状态栏

一、在代码中设置 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //去除title requestWindowFeature(Window.FEATURE_NO_TITLE); //去掉Activity上面的状态栏 getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN…

设计模式之composite decorator模式

composite是复合的意思&#xff0c;就是一个对象可包含其他同类对象的东西。 有两种实质不同的对象--leaf与component&#xff0c;leaf是叶子对象&#xff0c;component是容器对象&#xff0c;可用于容纳其他leaf或子component的。 这里在实现的时候要注意一个问题&#xff1…

TabHost中在Tab组内打开新的Intent

在TabHost中打开新的Intent时&#xff0c;按照通常的方法&#xff0c;会丢失Tab组&#xff0c;这时的Activity要继承自ActivityGroup&#xff0c;同时用如下方法打开新的Intent——public class MyActivity extends ActivityGroup {....Intent intent new Intent(Class.this, …

Oracle 11g Release 1 (11.1)——自动存储管理(Automatic Storage Management,ASM)

http://docs.oracle.com/cd/B28359_01/server.111/b31107/asmcon.htm#OSTMG03601Chapter 6, "Administering ASM with Oracle Enterprise Manager" 本文内容 ASM&#xff08;自动存储管理&#xff09; 参考资料 在海量数据库环境中&#xff0c;为了提高 I/O 性能&…

8004.企业培训师课件--企业培训师基础知识

8004.企业培训师课件--企业培训师基础知识 附件是企培班课件&#xff0c;设有密码&#xff0c;不是企培班学员不要下载。转载于:https://blog.51cto.com/sop2008/842436