以JavaScript之名

JavaScript基础①开篇

2016-11-15  本文已影响113人  逝我

前言

在暂停更新NDK系列之后,又一个系列文章拉开序幕,这个系列为不定期更新系列,所有文章大部分会利用公司的闲散时间完成,所以更新时间不确定。

当谈到JavaScript的时候我们谈什么 ? 记得刚上大学那会儿,本来报考的是软件专业, 结果被调剂到了网站应用专业,语言也从Java换成了C#,开始了拖控件之旅 。相信学过web的都对JavaScript多少有点了解,说起JavaScript那是做网页特效的好手,小到HTML元素的显示与隐藏,大到各种炫丽的动画效果,我们那时候,想要某种效果直接从网上找JavaScript,改吧改吧效果就出来了,那时候认识的JavaScript,基本上是做网页特效的二流语言。

如今各种JavaScript库满天飞,各种领域都有所涉及,似有当年Java之风范 。比较有名的JavaScript库,都有好几个,比如:AngularJS , VueJS , RecatJS 等,现如今,微信小程序也是使用的JavaScript作为主程语言,作为新时代的程序员,这么牛叉的语言,不学学岂不是心里痒痒 。

JavaScript前世今生

JavaScript(1995)起初是由网景公司开发的,为实现浏览器丰富的页面的效果,他可以实现服务端与客户端无缝连接。

起初JavaScript只不过是作为网页效果的实现者 , 后来随着互联网的极速发展,胖WEB客户端出现 ,需要加载的数据异常庞大,JavaScript作为WEB客户端语言,起初主要是实现网页效果,简单验证,到后来的AJAX出来,使得异步数据传输成为可能,这也是现如今JavaScript大行其道的主要原因。

JavaScript标准

JavaScript遵循ECMAScript标准 , 但不限于ECMAScript定义的标准。ECMAScript定义了JavaScript的语法,类型,语句,关键字,保留字,操作符,对象

JavaScript包含ECMAScript DOM BOM

JavaScript基本使用

文档嵌入

<script type="text/javascript">
        function sayHi() {
            alert("HI!!!");
        }

        function say() {
            alert("<\/script>"); // 使用\来进行script标签转义
        }
</script>

在网页中使用<script></script>标签在限定JavaScript代码区域,<script></script>可以出现HTML文档的任何区域,但是一般会在<head></head>中定义。

外部引入

除了在HTML文件中直接编写JavaScript,还可以创建单独的JavaScript文件,在HTML中进行引入(大多数情况下采取这种方式使用JavaScript)

// 外部引入js文件 .js扩展名不是必须的
<script type="text/javascript" src="example.js"> </script>

将JavaScript文件引用放在head标签的时候,会阻塞html网页的加载,html执行在body的时候,浏览器才会开始呈现内容。所以一般会将js外部加载放在html底部 。

    <html>

        <head>
            <title> example html page </title>
        </head>

        <body>
            <!-- body 内容 -->
            <!-- 将延迟加载的脚本放在底部 -->
            <script type="text/javascript" src="http://zhuyongit.com/demo1.js"> </script>
            <script type="text/javascript" src="http://zhuyongit.com/demo2.js"> </script>
        </body>

    </html>

JavaScript解析

所有的<script>元素都会按照它们在页面中出现的先后顺序依次被解析,在不使用defer和async属性的情况下,只有解析完前面的<script>元素中的代码后,才会开始解析后面的<script>元素中的代码。

使用defer属性可以让脚本在文档完全呈现之后再执行。延迟脚本总是按照指定它们的顺序执行 <script type="text/javascript" defer="defer" src="http://zhuyongit.com/demo1.js"> </script>

使用async属性可以表示当前脚本不必等待其他脚本,也不必阻塞文档呈现,不能保证异步脚本按照顺序执行 <script type="text/javascript" async src="http://zhuyongit.com/demo1.js"> </script>

结语

现在H5的普及程度已经远远超过以前,JavaScript的应用也越来越广泛,H5也原生的支持JavaScript,特别是Canvas标签,就是应JavaScript而生。

如今Android开发势弱 , 跨平台慢慢在兴起 , 就如当年PC应用一样 , 将会被WEB取代 ,虽然移动端与PC有一定的不同 , 但JavaScript作为一种跨平台的语言 ,还是有学的必要 , 并且这么火的一门语言,不学心里痒痒。

上一篇下一篇

猜你喜欢

热点阅读