java程序猿的javascript学习笔记(1——理念)

gccbuaa      2022-02-09     680

关键词:


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

    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代码。

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

 

 

题外话:


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

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

 

 

 









java程序猿的javascript学习笔记(12——jquery-扩展选择器)

计划按例如以下顺序完毕这篇笔记:Java程序猿的JavaScript学习笔记(1——理念)Java程序猿的JavaScript学习笔记(2——属性复制和继承)Java程序猿的JavaScript学习笔记(3——this/call/apply)Java程序猿的JavaScript学习笔记(4——this/闭... 查看详情

javascript学习笔记

Javascript学习笔记是一门程序设计语言基于对象和事件驱动语言(点击之类的),用于客户端,不同于jsp是用在服务端的。特点:1,交互性2,安全性(不允许直接访问硬盘)3,跨平台(只要能解释JS的浏览器就可以执行,和平台... 查看详情

《你所不知道的:大神与一般程序猿的区别》读书笔记

  看了这本书,有一些共鸣。  现在程序猿那么多,但是为什么他们的技术水平,他们的薪酬会相差那么悬殊呢?  大神和菜鸟,真的是差在技术上吗?  如何评判一个程序猿的优劣?答案是,看他的代码,程序猿和其... 查看详情

《javascript高级程序设计》学习笔记|8.1.理解对象

关注前端小讴,阅读更多原创技术文章理解对象ECMAScript定义对象:无序属性的集合(一组没有特定顺序的值),其属性可以包含基本值、对象、函数,整个对象可以想象成一个散列表相关代码→创建自定义对象的2种方法:Object... 查看详情

javascript高级程序设计(第三版)学习笔记1~5章

第2章,在html中使用JavaScriptHtml引入外部js脚本<scripttype="text/javascript"src="test.js">两个</script>之间不应放脚本,因为并不会被执行</script><script>标签有一个defer属性可以延迟脚本执行,但是并不保证会按脚本排列顺... 查看详情

javascript高级程序设计---学习笔记

...、读取属性特性对象的属性在创建时都带有一些特征值,JavaScript通过这些特征值来定义它们的行为。这些特性是为了实现JavaScript引擎用的,因此不能直接访问它们。ECMAScript中有两种属性:数据属性和访问器属性。1)数据属性... 查看详情

《javascript高级程序设计》学习笔记|9.1.代理基础

关注前端小讴,阅读更多原创技术文章代理基础ES6为的代理和反射为开发者提供拦截并向基本操作嵌入额外行为的能力代理是目标对象的抽象,其可以用作目标对象的替身,但完全独立于目标对象目标对象既可直接被操作,也可... 查看详情

javascript学习笔记

...用来描述如何使用这门语言来编写程序。 1、字符集JavaScript程序是用Unicode字符集编写的。 1.1区分大小写 JavaScript是区分大小写的语言。也就是说,关键字、变量、函数名和所有标识符(identifier)都必须采取一致的大... 查看详情

javascript高级程序设计学习笔记

第一章HTML中使用JavaScript2.1<script>元素<script>中有六个属性asynccharsetdeferlanguagesrctype2.1.1标签的位置传统做法放在<head>中,js会被先加载页面会有延迟所以吧JavaScript引入放在<body>元素中页面元素的后面这样先加载... 查看详情

《javascript高级程序设计》学习笔记|11.1.异步编程

关注前端小讴,阅读更多原创技术文章异步编程ES6新增了正式的Promise引用类型,支持更优雅地定义和组织异步逻辑接下来的几个版本,使用async和await关键字定义异步函数的机制相关代码→同步与异步同步行为在内存中顺序执行... 查看详情

javascript学习笔记

1,什么是JavaScript语言?javascript是一种轻量级的脚本语言.是一种嵌入式语言.语句:javascript程序的执行单位为行(line),也就是一行一行地执行.一般情况下,每一行就是一个语句.语句(statement)是为了完成某种任务而进行的操作.比如下面... 查看详情

js-javascript高级程序设计学习笔记19

 第22章高级技巧1、高级函数1、安全的类型检测。typeof,instanceof并非完全可靠。安全的类型检测:使用Object原生的toString()方法。functionisArray(value){returnObject.prototype.toString.call(value)=="[objectArray]";}2、作用域安全的构造函数构... 查看详情

javascript学习笔记整理(事件)

一、事件驱动1.事件javascript侦测到的用户的操作或是页面的一些行为(怎么发生的)2.事件源引发事件的元素(发生在谁的身上)3.事件处理程序对事件处理的程序或是函数(发生了什么事)二、事件的分类1.鼠标事件onclick      ... 查看详情

《javascript高级程序设计》学习笔记|4.1.原始值与引用值

关注前端小讴,阅读更多原创技术文章原始值与引用值JS变量是松散类型的:①不必规定变量的数据类型②变量的值和数据类型可随时改变JS变量可以包含2种类型的数据:原始值和引用值原始值是简单数据(6种原始值:Undefined、... 查看详情

javascript面向对象编程指南——学习笔记1

 第1章引言1.1回顾历史1.2变革之风1.3分析现状1.4展望未来1.5面向对象的程序设计  1.5.1对象(属性和方法的集合)  1.5.2类(相似对象的共同特征,如麻雀、老鹰都是鸟类)  1.5.3封装(将属性和方法集合起来,也有封... 查看详情

javascript高级程序设计---学习笔记

函数表达式定义函数的方式有两种:一种是函数声明,另一种是函数表达式。关于函数声明,它的一个重要特征就是函数声明提升,意思是在执行代码之前会先读取函数声明所以可以把函数声明放在调用它的语句后面。而函数表... 查看详情

2022年java学习笔记目录

...ava任务驱动课程任务驱动,统摄知识点:2022年Java程序设计讲课笔记二、2022年Java学习笔记(一)踏上Java开发之旅Java学习笔记1.1.1搭建Java开发环境-Java概述Java学习笔记1.1.2搭建Java开发环境-安装配置JDKJava学习笔记1.... 查看详情

2022年java学习笔记目录

...ava任务驱动课程任务驱动,统摄知识点:2022年Java程序设计讲课笔记二、2022年Java学习笔记(一)踏上Java开发之旅Java学习笔记1.1.1搭建Java开发环境-Java概述Java学习笔记1.1.2搭建Java开发环境-安装配置JDKJava学习笔记1.... 查看详情