zoukankan      html  css  js  c++  java
  • JavaScript高级程序设计学习(一)之介绍

    作为一名web开发人员,日常用的最多的就是js,也就是大名鼎鼎的ECMAScript,又称javascript。再次声明js与java除了语法上相似,没有半毛钱关系。据说之所以叫javascript,是因为过去网景公司花了十天时间开发历史上的第一版js,但当时没有名气,故借用java之名在该script前缀上加上一个java,以提升其知名度。具体的历史或老皇历,百度或者相关官网一大堆,这里不再赘述。

    作为一名前后台都攻的软件工程师,虽说平时js足以解决常见的问题和共性问题,但发现总会有这样那样的小错误,有的时候,就是那么一个小错误,调试了3~4小时,浪费了很多时间,最后解决了,却发觉分分钟可以解决的问题,我居然花了这么长时间,觉得太对不起有限的光阴。所以决定好好系统学习下javascript。在我看来,为该书做序的人,说的一句话,挺对的,js上手是非常容易的,要么跟着w3scholl一遍遍敲,记得当初我学习js的时候就是这样,又或者参考廖雪峰的js教程,他们的教程很容易让你熟悉并了解js。

    下面是网站:

    w3school:  http://www.w3school.com.cn/js/index.asp

    廖雪峰教程:https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000

    不过如果是小白建议还是从w3school入手吧,当然在此也可以看看廖雪峰。我个人是从w3school一遍遍敲,一遍遍运行,一遍遍找博客了解和熟悉。但是博客毕竟是零散的,不够系统。视频了,我个人学习视频一大堆,有好哥们分享的,也有朋友给的。说到视频,如果你是完全的小白,建议可以先看视频再实战,因为视频可以让你了解熟悉,等到有了基本的熟悉,去除了一些陌生感,就是实战吧!

    或许有人问,我为什么不看视频学习呢?

    第一,我个人有相关经验,可以看懂js和使用js解决项目问题;

    第二,作为一名工程师,平时忙于工作,没有很多时间去看视频,视频的时间太长了;

    第三,在我看来视频适合小白,完全不懂的,但是作为有相关实战经验的人,没多大必要,当然有些进阶相关的视频还是不错的;

    第四,书相对于视频,系统全面,而且,上下班地铁差不多的两个小时,我可以通过手机阅读,至少可以读完一章,这样时间也就充分的利用了;

    说到js,至今我仍觉得它是一个非常神秘又好用的玩意,它可以做出酷炫的效果,也可以让我前后端分离开发,同时作为一名Java程序员,它的语法对我而言太容易懂了。当然,还是那句话,入手容易,深入难。如今我要打破这个瓶颈。

    下面进行系统的讲解:

    1.JavaScript由三部分组成

    (1)核心(ECMASCRIPT),又称ECMA262,是js的核心;

    ECMA由以下部分组成:

    a.语法

    b.类型

    c.关键字

    d.语句

    e.保留字

    f.操作符

    g.对象

    (2)浏览器对象模型;

    常用的window,location,screen等,

    我用的比较多的,还是window和location

    window常用的方法

    alert()警示框  常用于提示信息

    confirm()确认框    通常用于是否删除这样的或是否启用等

    propt()输入框  这个用的不多

    setInterval()每隔多长时间加载 ,可以调用多次, ajax轮询可以使用它,不过太消耗服务器资源,应用的通常是数据定时更新

    setTimeout()每隔多长时间加载 ,一般只加载一次

    location.href用的比较多  前后端分离时,不过通过form提交的形式,直接通过window.location.href进入另外一个界面

    location.reload用的也比较多 

    当然浏览器对象除了上述说的,还有navicator,不过这个我也没用过,开发一段时间,从未用过,看字面意思,似乎有导航的作用 

    (3)文档对象模型;

    文档对象,简单的说对节点进行增,删,改,查。

    增加的话,比如遍历数据后,将html元素,通过append方法追加到某个ID选择器或者类选择器中

    删除的话,节点删除,比如,上级公司下级部门这样的

    修改的话,replace方法替换

    查的话,find或push之类的方法

    这是我个人开发用的比较多的

    2.html页面如何写js

    html写js有三种方式:

    (1)外部js 通过<script src="test.js"></script>引入html中,从而可调用该js文件中所有函数,我个人建议,非常强烈建议开发,不论是初学者还是半路出家的,多写外部js少写内部js或者直接在<body></body>中嵌入js,因为这种写法一点都不好,至少我这么认为,写外部js可以将公共部分js抽取复用,而且方便管理修改规范;

    运行示例:

    test.html

    <html>
    <head>
    <script src="test.js"></script>
    </head>
    <body>
    </body>
    </html>

    test.js

    alert("hello js")

    (2)内部js 在<head></head>中嵌入<script></script>

    <html>
    <head>
    <script>
    alert("hello js")
    </script>
    </head>
    <body>
    </body>
    </html>

    (3)<body></body>内嵌入js

    <html>
    <head>
    </head>
    <body>
    
    <script>
    alert("hello js")
    </script>
    </body>
    </html>

    (1)还是那句话,建议使用,(2)的话,慎用,因为到时对web进行优化时,<head></head>内嵌入大量的js将会导致浏览器加载网页速度变慢,不利于web性能优化

    另外js文件放头部和尾部的效果是不一样的,因为头部优先加载,头部通常放置css外部文件,尾部放置js,因为浏览器优先加载头部,由头到尾,由于css优先加载,这样渲染效果也会很快,如果是js文件放置头部的话,会导致css渲染效果变慢从而导致影响用户体验

  • 相关阅读:
    FreeRTOS之源码 及 移植详解
    FreeRTOS之Tracealyzer for FreeRTOS(FreeRTOS+Trace) 详解(源码解析+移植)
    FreeRTOS之全配置项详解、裁剪(FreeRTOSConfig.h)
    linux下安装oracle中遇到的一些问题
    RedHat Enterprise Linux 6 配置Xmanager ,实现图形界面连接
    Linux ext2/ext3文件系统详解
    对固态硬盘ssd进行4k对齐
    在CentOs6.5安装jdk
    Android的API版本和名称对应关系
    Java反射机制及Method.invoke详解
  • 原文地址:https://www.cnblogs.com/youcong/p/9053212.html
Copyright © 2011-2022 走看看