background image

主题

: Javascript

——

编程思想

写给

C/C++程序员

 

Javascript 编程思想——写给 C/C++程序

By yeqingli

抛砖引玉,给出一些之前学习

JS 时候的体会,希望引发大家的讨论和思考吧。

本文主要分三节:

 

第一节 像用

C 一样使用 JS。在不熟悉的时候,语言的学习者会倾向用新语言来模拟旧

语言。

 

第二节 像用

JS 那样使用 JS。熟悉了一个语言以后,语言的学习者开始将语言的特性

发挥出来,并且开始消除旧语言的影子。

 

第三节

JS 的 Dom 对象。最有用、最常用、也是最微秒的部分。只讲问题,详细 API 请参

考《

Javascript 权威指南》。

 

第一节

 JS 本身(像用 一样使用 JS

C/C++

Javascript

备注

变量定义

int/float/
double/cha

r*等

var v; JS 是

弱类型语言

需要显式指定变量类型,也可
以理解为变量类型不是跟变量
本身绑定的,而是跟变量的值
绑定的。所以,值一确定,类
型就确定了,而变量名只是起
标识作用。

弱类型语言:变量定义的时候
不需要显示指定变量类型的编
程语言。

数据的粘合

c 语 言

的)

struct

关联数组

“使用关联数组实现数组的粘

合 基本上也是现代弱类型动
态语言的惯例。

参数传递

默认拷贝传递,

& 符 号 可 以

引用传递

默认是引用传递

内存管理

手工内存管理

C++ 可以 利

STL 进行自

动内存管理

)

自动内存管理

这个基本上也是脚本语言的惯
例。

程序三大结构 选择

/判断/循

语法上是一样的。但

JS 针对数

组 和 对 象 有 遍 历 操 作
for(... in ...)

For...in...是更特殊的循
环语句。

程序粘合

1

函数定义

function

程序粘合

2

类的定义

Function.prototype

这个下一节会进一步叙述

 

第二节

 JS 的面向对象(像 JS 的作者那样使用 JS)

C/C++

Javascript

备注

语言泛型

过程式

函数式加过程式