前端系统化学习【JS篇】:(一)浏览器简述

前言

细阅此文章大概需要 8分钟\color{red}{8分钟}8分钟左右
本篇中简要讲述\color{red}{简要讲述}简要讲述了:
常见的浏览器内核
浏览器的控制台
Script标签的位置
代码调试(debugger)
在浏览器控制台中打印引用数据类型的结果,展开与合起的区别

如果有任何问题都可以留言给我,我看到了就会回复,如果我解决不了也可以一起探讨、学习。如果认为有任何错误都还请您不吝赐教,帮我指正,在下万分感谢。希望今后能和大家共同学习、进步。
下一篇会尽快更新,已经写好的文章也会在今后随着理解加深或者加入一些图解而断断续续的进行修改。
如果觉得这篇文章对您有帮助,还请点个赞支持一下,谢谢大家!

常见的浏览器内核

webkit内核(v8引擎)
谷歌chrome
Safari
opera >=v14
国产浏览器
手机浏览器

Gecko
火狐FireFox

presto
Opera < v14

Trident
IE
IE EDGE 开始使用双内核(其中包含chrome迷你)

浏览器的控制台(Chrome)(f12/fn+f12)

Elements: 查看结构样式,可以修改这些内容
Console: 查看输出结果和报错信息,是js调试的利器
Source: 查看项目源码
NetWork: 查看当前网站所有资源的请求信息(包括和服务器传输的HTTP报文信息)、加载时间(根据加载时间进行项目优化)
Application: 查看当前网站的数据存储和资源文件(可以盗图,在此处可以做音视频防盗)

浏览器常用的输出方式

在控制台输出

console.log/dir/table…在控制台输出
console也是一个【内置对象】,其中提供了好多方法
log: 正常输出
dir: 输出一个对象的详细键值对信息
table: 把一个多维JSON数组在控制台按照表格的方式呈现出来
多维数组:几维数组就看数组当中嵌套了几级

       //如
       [12,13]//一维数组
       [12,[12]]//二维数组
       [12,[{xxx:xxx}]]//三维数组
       //二维及以上都称为多维数组

多维对象:几维对象就看对象当中嵌套了几级

       //如
       {name:xxx}//一维对象
       {name:xxx,[12,23]}//二维对象
       {name:{name:{name:function(){}}},[12,13]}//三维对象
       //二维及以上都称为多维对象

        let a = 10;
        let b = [{id:1,name:'张三'},{id:2,name:'李四'}];
        //1. console.log/dir/table....在控制台输出
        console.log(a);//数字类型10
        console.dir(a);//字符串类型10
        console.table(a);

在浏览器弹窗
alert/confirm/prompt
弹窗的三种方式输出的【结果都必然经过toString转换为字符串】

             alert(1);//=>'1'

【弹窗的三种方式会阻断JS代码的执行】,只有当窗口关掉,JS才会继续执行

                for(let i = 1;i<=5;i++){
                       alert(i);
                       console.log('哈哈');
                     }  

confirm: 确定和取消【选择型弹窗】

      confirm('确定干啥嘛?');

prompt: 确定和取消【选择型弹窗】不同的是多出一个文本框

      prompt('确定干啥嘛?写出原因');       

document.write【没人用了】

输出的结果是字符串,写入并覆盖掉页面的全部内容,

关于Script标签

在前端领域混了这几年,总结了一套前端学习的精讲视频和学习路线,如果有对前端开发感兴趣的伙伴,不管你是想转行,或是大学生,还有工作中想提升自己能力的web前端党,欢迎大家的加入我的前端开发交流群:603985993 希望大家诚心交流!,与企业需求同步。好友都在里面学习交流,每天都会有大牛定时讲解前端技术!也可以关注我的微信公众号:【前端留学生】 每天更新最新技术文章干货。

Script标签的位置

一般把script标签放在body的末尾位置,因为js一般是用来操作结构的,如果结构没加载出来,js无法执行就获取不到,所以一般涉及到操作结构的,都建议放在body末尾
但是,也可以放在前面的【三种情况】
不涉及操作结构
利用window.οnlοad=function() {//把js代码放在这里}【利用事件,当页面中的结构和内容都加载完成,才执行这里的代码】
jQuery中也有一个对应window.onload的方法,$(document).reday(function(){}) ,【和window.onload的区别是:reday是当dom结构加载完成就可以执行,而onload是所有的dom结构以及内容都加载完成才能执行,所以reday一定比window.onload早先触发,而且reday在页面中可以用多次,而window.onload只能用一次【原因是一个是dom零级事件绑定,另一个是dom二级事件绑定】】

代码调试(debugger)

在代码前加debugger;在执行时会进入debug模式,通过加断点来运行程序
f10 逐过程,
f11 逐语句执行,一行行代码执行

在浏览器控制台中打印引用数据类型的结果

若是 访问引用数据类型,得出并打印某引用数据类型的结果。
则在展开这个结果之前,略所方式查看的是当时的结果
而一旦展开这个结果,永远展示的是堆中最新的数据

作者:Hypnotize 链接:https://juejin.im/post/6867086699399217160 来源:掘金

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值