文档章节

JavaScript 基础知识

青慕
 青慕
发布于 2017/09/02 09:07
字数 865
阅读 7
收藏 0

1.1  JavaScript可以对任意数据类型做比较:

要特别注意相等运算符==。JavaScript在设计时,有两种比较运算符:

第一种是==比较,它会自动转换数据类型再比较,很多时候,会得到非常诡异的结果;

第二种是===比较,它不会自动转换数据类型,如果数据类型不一致,返回false,如果一致,再比较。

由于JavaScript这个设计缺陷,不要使用==比较,始终坚持使用===比较。

另一个例外是NaN这个特殊的Number与所有其他值都不相等,包括它自己。

1.2 null和undefined

null表示一个“空”的值,它和0以及空字符串''不同,0是一个数值,''表示长度为0的字符串,而null表示“空”。

在其他语言中,也有类似JavaScript的null的表示,例如Java也用null。但是,在JavaScript中,还有一个和null类似的undefined,它表示“未定义”。区分两者的意义不大。大多数情况下,我们都应该用nullundefined仅仅在判断函数参数是否传递的情况下有用。

1.3  变量

在JavaScript中,使用等号=对变量进行赋值。可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量,但是要注意只能用var申明一次。

1.4 字符串

  • JavaScript的字符串就是用''""括起来的字符表示
  • 要把多个字符串连接起来,可以用+号连接
  • 要获取字符串某个指定位置的字符,使用类似Array的下标操作,索引号从0开始
  • 需要特别注意的是,字符串是不可变的,如果对字符串的某个索引赋值,不会有任何错误,但是,也没有任何效果
  • toUpperCase()把一个字符串全部变为大写
  • toLowerCase()把一个字符串全部变为小写
  • indexOf()会搜索指定字符串出现的位置
  • substring()返回指定索引区间的子串

1.5 数组

  • JavaScript的Array可以包含任意数据类型,并通过索引来访问每个元素
  • 要取得Array的长度,直接访问length属性
  • 直接给Arraylength赋一个新的值会导致Array大小的变化
  • Array可以通过索引把对应的元素修改为新的值
  • Array也可以通过indexOf()来搜索一个指定的元素的位置
  • slice()就是对应String的substring()版本,它截取Array的部分元素,然后返回一个新的Array
  • 如果不给slice()传递任何参数,它就会从头到尾截取所有元素。利用这一点,我们可以很容易地复制一个Array
  • push()Array的末尾添加若干元素,pop()则把Array的最后一个元素删除掉
  • 如果要往Array的头部添加若干元素,使用unshift()方法,shift()方法则把Array的第一个元素删掉
  • sort()可以对当前Array进行排序,它会直接修改当前Array的元素位置,直接调用时,按照默认顺序排序
  • concat()方法把当前的Array和另一个Array连接起来,并返回一个新的Array
  • join()方法是一个非常实用的方法,它把当前Array的每个元素都用指定的字符串连接起来,然后返回连接后的字符串

© 著作权归作者所有

共有 人打赏支持
青慕
粉丝 4
博文 15
码字总数 7496
作品 0
贵阳
程序员
私信 提问
学习Javascript的8张思维导图

分别归类为:  javascript变量  javascript运算符  javascript数组  javascript流程语句  javascript字符串函数  javascript函数基础  javascript基础DOM操作  javascript正则表达式...

thinkyoung
2014/09/23
0
0
javascript——从「最被误解的语言」到「最流行的语言」

JavaScript曾是“世界上最被误解的语言”,因为它担负太多的特性,包括糟糕的交互和失败的设计,但随着Ajax的到来,JavaScript“从最受误解的编程语言演变为最流行的语言”,这除了幸运之外,...

modernizr
2014/05/20
1K
12
javascript学习思维导图

JavaScript 数据类型 JavaScript 变量 Javascript 运算符 JavaScript 流程控制 JavaScript 数组 JavaScript 函数基础 JavaScript 字符串函数 JavaScript 正则表达式 DOM 基本操作 Window 对象...

IT智云编程
09/12
0
0
北京东方网力诚聘HTML+CSS,Rails,js,as,java程序员

北京东方网力公司(http://www.netposa.com)诚聘HTML+CSS前端设计人员,Rails程序员,javascript程序员,actionscript程序员,java程序员等进行企业软件开发,包括办公自动化、项目管理、视频会议...

Imy
2011/02/13
439
0
黑马程序员:前端学习路线图

前端很火,想自学前端的人也多。作为过来人,知道自学的辛苦。特来给大家分享这份学习路线图,让想自学前端的小伙伴们有一份系统专业的学习资源和学习指导。若是觉得有用记得给点个赞哦!无论...

传智播客
2017/03/08
1K
2

没有更多内容

加载失败,请刷新页面

加载更多

自定义 Maven 的 repositories

有时,应用中需要一些比较新的依赖,而这些依赖并没有正式发布,还是处于milestone或者是snapshot阶段,并不能从中央仓库或者镜像站上下载到。此时,就需要 自定义Maven的<repositories>。 ...

waylau
34分钟前
1
0
徒手写一个es6代码库

mkdir democd demonpm initnpm install -g babelnpm install -g babel-clinpm install --save-dev babel-preset-es2015-node5 在项目目录创建两个文件夹 functional-playground ......

lilugirl
35分钟前
2
0
linux定位应用问题的一些常用命令,特别针对内存和线程分析的dump命令

1.jps找出进程号,找到对应的进程号后面才好继续操作 2.linux查看进程详细信息 ps -ef | grep 进程ID 3. dump内存信息 Jmap -dump:format=b,file=YYMMddhhmm.dump pid 4.top查看cpu占用信息 ...

noob_chr
35分钟前
1
0
Android TV开发-按键焦点

写在前面 按键焦点过程了解 2.1 dispatchKeyEvent 过程了解 2.2 焦点查找请求过程了解 1.2.1 第一次获取焦点 1.2.3 按键焦点 焦点控制 焦点记忆 应用场景 参考资料 [TOC] 1. 写在前面 工...

冰雪情缘l
35分钟前
1
0
java框架学习日志-3

这章主要是补充一些ioc创建对象的方式,ioc容器在写好<bean></bean>的时候就已经创建对象了。在之前的例子中,一直都是无参的构造方法。下面给出有参的构造方法的对象的创建,没有什么难点重...

白话
37分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部