初识JavaScript
JavaScript
ECMA-262:
变量,函数,对象,数据类型。。。。唯独没有输入和输出。
Javascript:包含
ECMA-262,核心
BOM 浏览器对象模型,
DOM 文档对象模型
什么是javascript:
Javascript是弱类型,具有面向对象能力的、解释型的程序语言。
更具体的说法是,基于对象和事件驱动的客户端脚本语言。
浏览器的阵营:
Ie浏览器:
标准浏览器:
IE9之后的
非标准浏览器:
IE9之前的
谷歌,火狐,苹果,欧鹏
Javascript:
- 表单验证
- 页面中的特效
- Ajax页面无刷新(异步传输)
Javascript使用:
alert();警告弹出;
多行注释/* */
单行注释为 //,只注释双斜杠后面内容,
script的是用方法:
- 放到<script></script>标签内部; ★★★★★
- 做外部链接,用<script src=”地址”></script> ★★★★标签内部不允许写任何东西
- 事件驱动例如:<div onclick="alert('今天很不错')">今天天气怎么样</div> ★★★
- <a href="javascript:void(0);">哪都不想去</a>--void(0)可以省略★
Script:
- src:存放js代码的地址;
- type: 声明代码的语言类型
变量
Javascript,区分大小写
标识符:
所谓的标识符就是,变量,函数,属性,参数。。。的名字(也就是起的名字),
- 第一个字符必须是字母或_(下划线)或者$(美元符)
- 其他的字符可以是字母、下划线或数字或者美元符
- 不能把保留字,和关键字作为标识符
标识符命名方法:
驼峰命名:my_name
Alert123
myName
ECMAScript 全部关键字
break |
else |
new |
var |
case |
finally |
return |
void |
catch |
for |
switch |
while |
continue |
function |
this |
with |
default |
if |
throw |
|
delete |
in |
try |
|
do |
instanceof |
typeof |
保留字
abstract |
enum |
int |
short |
boolean |
expot |
interface |
static |
byte |
final |
long |
super |
char |
float |
native |
synchronized |
class |
goto |
package |
throws |
const |
extends |
private |
transient |
debugger |
implements |
protected |
volatile |
double |
import |
public |
数据类型:
分为1种的说法:
Js中的所有内容皆为对象,即使不是对象在运算过程中也会被转为对象,因为js是基于对象的语言。
分为2种的说法:
简单数据类型(值类型)和复杂数据类型(引用类型)
分为6种的说法:
Undefined 未定义
Boolean 布尔
Number 数字
String 字符串
Object 对象
Null 空对象
typeof用来检测数据类型,对值或者变量返回出对应的类型。
undefined 未定义类型
boolean 布尔类型
number 数字类型
string 字符串类型
object 对象类型
function 函数类型
Undefined 类型:
undefined(未定义类型)类型只有一个值,undefined
当使用var 声明一个变量,但没有为其赋值,这个时候系统会自动给一个值,这个值就是undefined。
Boolean类型:
boolean(布尔类型),只有两个值,true和false。就是真和假(有或者没有,行或者不行,确定或者不确定,)
Number类型:
number(数值类型)分为三种:整数、浮点数、NaN
整数:
十进制:
1、2、3、10、20、30、、、、、、
八进制(以8为基数,前导必须为0,八进制的序列为0~7)
070、转换为十进制就是56
十六进制(它的基数为a~f,0~9,前导必须为0x,)
0xff 转换为十进制为255
0xd5 转换为十进制为213
浮点数:
小数:
0.5 0.6 0.8
科学记数法:
0.5 5*e-1
2330000000000 233*e10
NaN(Not a Number ):
错误提示,
但是他是一个特殊的值,
这个值有两个特点:
- 不与任何数值相等,包括自身。
- 极具传染性,和任何值发生运算都会变成NaN
NaN的唯一检测方法
isNaN 是唯一检测NaN 的方法,isNaN()
是true为NaN 是false为不是NaN
String字符串类型:
var x="wo";
string 字符串类型 用引号包裹起来的东西都叫做字符串
建议使用单引号,要与html区分开;
Object对象类型:
ECMAScript中定义的对象是一组数据和功能的集合。对象可以由new操作符来实例化一个对象。
var x=new Object();
Object()可以进任意传参、可以传数值,布尔,字符串等。而且还可以进行相应的计算。
Null空对象类型:
Null表示了一对象的空指针
var w = null;
alert(w); // null
alert(typeof w); //object
null与undefined是什么关系,
null与undefined 是相等的,
区别为:
类型不同
但是值相同
Null表示的是空对象, 待业青年
Undefined 表示的是未定义的变量, 无业游民
Null是最终要被接受对象的,
Undefined是不知道
数据类型的转换:
Js是一种弱类型的语言,弱类型语言是在声明的时候不需要制定数据的类型,在运算的时候会根据需要进行类型的转换。
类型转换分为两种,显示转换(强制转换)、隐式转换(自动转换)
自动转换:
自动转换是发生在运算或判断过程中,不需要书写,转换是都是向着更为精确的方面发生转换。
强制转换:
Number类型:
ParseInt()只是转换为整数使用的
纯数字,直接转化为纯数字。
浮点数,只转换点前面的整数部分,点后面将被忽略。
纯数字之外的其他字符,会被转换为NaN,
转化的时候会从第一位开始,若前面开始部分为空格,将忽略掉空格,如果第一个字符不是正或者负号或者数字将会被转换为NaN
若开始的部分为正或负符号,(只能出现一次),然后开始解析数字,直到遇到非数字,解析结束,若是没有数字,将被转换成NaN,
parseFloat()可以转化浮点数
跟parseInt()一样,只不过识别了一位小数点。 Number()
Undefined NaN
Boolean true:1 false :0
String 纯数字,或者浮点数直接转换;
(空格不算)直接转换为0
其他都为NaN
Number 直接转换
Object 除了null都是NaN
Null 直接转换为0
String()
String()将其他数据全部转换为字符串
返回的值是以字符串形式显示的,不再具有任何类型的意义。
对任何数据都有效。
布尔值的转换:
Boolean() 将其他数据转换为布尔值
Undefined false
Boolean 不用
Number 0、0.0、NaN 转化为false 其他都为true
String 只有空字符串味false 其他都为true
Object 除了null 其他都为true
Null false
初识JavaScript的更多相关文章
- 笔记一、初识 Javascript
一.初识 Javascript javascript是一种专为与网页交互儿设计的脚本语言.由三部分组成:ECMAScript (ECMA-262定义) : 提供核心语言功能文档对象模型(DOM): ...
- Day15 HTML补充、初识JavaScript
一.上节回顾 上节回顾: HTML 头部信息:编码.title.style.link(导入css文件) 身体: 内联 块级 --->inline-block(既有内联效果又有块级效果) a标签: ...
- 初识JavaScript(一)
初识JavaScript(一) 最近由于工作的需要的原因,我从一个写后台的现在让我转到写前端,再加上我的js部分特别的差,所以我现在开始学习js部分的知识. 我的第一篇博文就这样开始写了.俗话说,千里 ...
- 《前端之路》之 初识 JavaScript
01 初识 JavaScript 作为在码农圈混迹了 四五年的老码畜来说,学习一门新的语言,就仿佛是老司机开新车一样 轻车熟路. 为什么会这么快呢? 因为各种套路啊- 任何一种计算机语言的最开始都是和 ...
- 01初识 JavaScript
1.初识 JavaScript 1.1 JavaScript 是什么 l JavaScript 是世界上最流行的语言之一,是一种运行在客户端的脚本语言 (Script 是脚本的意思) l 脚本语言 ...
- 初识JavaScript(三)
初识JavaScript(三) 我从上一讲<初识JavaScript(二)>了解到了类型.值.变量的定义以及特点,本节我将学习到JavaScript中的算术运算.二进制浮点数和四舍五入的错 ...
- 初识JavaScript(二)
初识JavaScript(二) 我从上一篇<初识JavaScript(一)>知道和认识JavaScript的词法结构,也开始慢慢接触到了JavaScript的使用方法,是必须按照JavaS ...
- 初识JavaScript闭包
一个问题引发的思考 在我学习javascript的事件时,有一个小任务是使用JS来实现 li 列表项在鼠标悬浮时会有背景阴影的动态效果,很自然想到用for 来为每个列表项添加onmouseover 和 ...
- 初识JavaScript 变量, 操作符, 数组
这里讲的不会太多, 因为所有的语言都是一样的, 一些基本的东西, 所以就随便写写. 变量 变量就是可变的量, 编程角度理解就是用于存储某种/某些数值的存储器. 我们可以把变量具象理解为一个盒子, 而我 ...
随机推荐
- C++实现线程安全的单例模式
在某些应用环境下面,一个类只允许有一个实例,这就是著名的单例模式.单例模式分为懒汉模式,跟饿汉模式两种. 首先给出饿汉模式的实现 template <class T> class sing ...
- SQLServer地址搜索性能优化例子
这是一个很久以前的例子,现在在整理资料时无意发现,就拿出来再改写分享. 1.需求 1.1 基本需求: 根据输入的地址关键字,搜索出完整的地址路径,耗时要控制在几十毫秒内. 1.2 数据库地址表结构和数 ...
- AFNetworking 3.0 源码解读(九)之 AFNetworkActivityIndicatorManager
让我们的APP像艺术品一样优雅,开发工程师更像是一名匠人,不仅需要精湛的技艺,而且要有一颗匠心. 前言 AFNetworkActivityIndicatorManager 是对状态栏中网络激活那个小控 ...
- 一个诡异的COOKIE问题
今天下午,发现本地的测试环境突然跑不动了,thinkphp直接跑到异常页面,按照正常的排错思路,直接看thinkphp的log 有一条 [ error ] [2]setcookie() expects ...
- 记录一次bug解决过程:数据迁移
一 总结 不擅长语言表达,勤于沟通,多锻炼 调试MyBatis中SQL语法:foreach 问题:缺少关键字VALUES.很遗憾:它的错误报的让人找不着北. 二 BUG描述:MyBatis中批量插入数 ...
- 深入理解javascript函数定义与函数作用域
最近在学习javascript的函数,函数是javascript的一等对象,想要学好javascript,就必须深刻理解函数.本人把思路整理成文章,一是为了加深自己函数的理解,二是给读者提供学习的途径 ...
- Android开发学习—— 创建项目时,不是继承activity,而是继承ActionBarActivity
对于我们新建android项目时, 会 继承ActionBarActivity. 我们在新建项目时, 最小需求的sdk 选择 4.0以上版本.这样 新建的android项目就是继承activity了!
- Greenplum 的分布式框架结构
Greenplum 的分布式框架结构 1.基本架构 Greenplum(以下简称 GPDB)是一款典型的 Shared-Nothing 分布式数据库系统.GPDB 拥有一个中控节点( Master ) ...
- Zephyr OS 简介
最新发布的开源 Zephyr Project™(Zephyr 项目)是一款小型且可伸缩的实时操作系统,尤其适用于资源受限的系统,可支持多种架构:该系统高度开源,对于开发人员社区完全开放,开发人员可根据 ...
- 【一起学OpenFOAM】系列由来
1 为什么要学习OpenFOAM 掐指算起来,接触CFD也差不多有十个年头了,其间一直使用的商用CFD软件,有Fluent.CFX.StarCCM+等,这些商用软件各有其优缺点,都能较好的解决常规的工 ...