Java程序猿的JavaScript学习笔记(1——理念)

时间:2023-11-25 14:53:20

计划按例如以下顺序完毕这篇笔记:

    1. Java程序猿的JavaScript学习笔记(1——理念)
    2. Java程序猿的JavaScript学习笔记(2——属性复制和继承)
    3. Java程序猿的JavaScript学习笔记(3——this/call/apply)
    4. Java程序猿的JavaScript学习笔记(4——this/闭包/getter/setter)
    5. Java程序猿的JavaScript学习笔记(5——prototype)
    6. Java程序猿的JavaScript学习笔记(6——面向对象模拟)
    7. Java程序猿的JavaScript学习笔记(7——jQuery基本机制)
    8. Java程序猿的JavaScript学习笔记(8——jQuery选择器)
    9. Java程序猿的JavaScript学习笔记(9——jQuery工具方法)
    10. Java程序猿的JavaScript学习笔记(10——jQuery-在“类”层面扩展)
    11. Java程序猿的JavaScript学习笔记(11——jQuery-在“对象”层面扩展)
    12. Java程序猿的JavaScript学习笔记(12——jQuery-扩展选择器)
    13. Java程序猿的JavaScript学习笔记(13——jQuery UI)
    14. Java程序猿的JavaScript学习笔记(14——扩展jQuery UI)

每一篇或许几句话,或许长篇大论。短的可能是由于概念难理解,须要慢慢消化;长的,可能是由于内容多并且水,但不提又不行。

如今開始第1篇:理念。

作者博客:http://blog.csdn.net/stationxp

作者微博:http://weibo.com/liuhailong2008

转载请取得作者允许

众生平等

JavaScript是一种弱类型的语言。表面的意思是不在语法层面检查变量类型。深层的含义是:在JavaScript的世界里,众生平等

不不过变量,也包含数组、函数和对象。

习惯了C++、Java、C#的童鞋,有点接受不了?

是的,众生平等,看以下的样例。

<script>
<strong>var arr = [function(){ return this.x*this.y;},56,{x:10,y:16} ];</strong>
</script>

在数组arr中,第一个元素(arr[0])是一个函数,第二个元素(arr[1])是一个数字。第三个元素(arr[2])是一个对象。

有点不习惯吗?说明你还没适应JavaScript的理念。

再看以下的语句:

<script>
var arr = [function(){ return this.x*this.y;},56,{x:10,y:16} ]; // 不理解this没关系。先不去管。后面会聊到
<strong>arr[2].area = arr[0];
alert(arr[2].area());</strong>
</script>

好吧,第1篇到此为止。

看上面的代码看到毫无违和感,感觉如同白话。那本篇的目的就达到了。

理念上不统一。没法往后走,看不懂别人的代码。也写不出地道的JavaScript代码。

假设上面的代码还是看不习惯,找几本书看看。找些代码看看,慢慢就习惯了。

题外话:

在威权社会待习惯的人。习惯了皇帝、亲王、官、民、奴的严格区分,到了友邦看到市长和草民一起排队买汉堡就惊诧得受不了。

没这个必要,也没啥可惊诧的,习惯了也没什么不同。