一、介绍

  • 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第二篇(基础概念--躯壳篇),有着部分第三章的知识内容,当然其中还有我个人的理解。
  • 红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂更不容易,要熟练js更是难,中间需要不断的积累与重温。
  • 本书不是读一两遍就能把这书吃透,需要多读,可谓温故而知新,可以为师矣。

很多人看这些厚的书都是三天打鱼两天晒网,很少能看下去,能记住的东西往往前3章的内容,所以我写博客就是为了能和大家一起来读这本书,一起学JS。


二、基本概念(躯壳篇)

首先要说的,JavaScript是一门高级语言,没错语言,语言就要有一定的语法,接地气的讲就像中文,中文也有一定的语法,比如怎样书写,一撇一划便形成汉字之美,这样就写出大家都懂得汉字。类似的JavaScript也有语法:

1.区分大小写

  • 在js中的一切,如变量,函数名,操作符等都区分大小写。 如变量名为test 和 Test 是两个不同的变量。

2.标识符(就是自己去定义的名称,如变量,函数名,属性名,参数等)

  • 由字母,下划线(_),美元符号($),和数字组成,且第一个字符不能以数字开头。如3Ta 这样的命名是错误的。
  • 命名方式建议使用驼峰式命名:如myFriend。

3.注释

  • 单行注释
// 这是单行注释
  • 块级(多行)注释
    /*
* 这是多行注释
*/

4.严格模式

严格模式在ES5中加入,为了增强js代码的安全性和消除js的一些不合理异常的行为。

  • 启动严格模式:
//在js中加入use strict 这条字符串
"use strict"
  • "use strict"加入的位置(哪里想用加哪里):

    1.如果需要整个js脚本都使用严格模式就在脚本第一行加入这句话

    2.如果在函数中使用严格模式就在函数内部第一行加入这句话。

5.关键字和保留字

这么说吧,关键字和保留字都是一些特定的词,这些词不能在作为标识符使用,也就是你不能用来定义自己的东西,人家有申请专利。就像人家肯德基,你不能再取肯德基了吧,你最多来个肯基基是不是。

  • 比如:if,else,do ,while,for ,break,var,let等等,还挺多,这个不用记,多敲代码就自然而然知道了。

6.变量

js是一门弱类型语言,它不像java的强类型,对于每个数据类型的声明都需要指出是什么类型的数据。而js的变量声明就用var这个操作符。

//声明一个变量,它可以用来保存任何类型的值,此处没对sum赋值,默认为undefined
var sum;
//声明一个变量并赋值,此处赋值了字符串
var message = "hello javascript!";
//此处再对message这个变量赋值数字12,是允许的,不会报错
message = 12;

注意点:

1.在没有使用var声明变量时,该变量是属于全局变量。

function setAge(){
//没有使用var定义,age为全局变量
age = 10;
}
//函数外部可以使用age
console.log(age); //10

2.在严格模式下,不使用var定义变量会报错。

7.语句

7.1 概念:

到语句了,语句这里ES给出定义:语句以一个分号结尾。这里语句就像中文的一句话,中文以句号结尾。语句可长可短,只要能表达到意思能让人明白意思,对于js语句就要让其解析器明白。(分号可以省略,但是不建议省略分号,避免出现不必要的问题)。

例子:

//声明语句
var sum = 1;

插插话:其实一个JavaScript的程序就是语句的集合,解析器一条条读下来一条条解析,你想表达的机器知道了,就执行相应操作,最终做好一件事。是不是感觉写个程序好比一篇理科生作文。

7.2 ECMA-262 规定了一组语句(流程语句)。

这里规定的语句就像的是它给了一组句型你,你通过这些句型能够更好来表达你的程序。看到这你会发现js和java的语法有些相似。

常用语句(句型)如下:

1.if语句(条件语句)

/*
*if语句模版
*如果if括号condition值为true就执行if后面的代码块,否则执行else后面的代码块
*/
if(condition){
//do something
}
else{
//do something
}

2.do-while(循环语句)

/*
*do-while语句模版
*do会先执行一次其后面的代码,如果while后面的expression条件为true就会继续执行do后面的代码块
*/
do{
//do something
}while(expression)

3.while(循环语句)

/*
*while模版
*当expression条件为true则执行代码块里的代码
*/
while(expression){
//do something
}

4.for循环语句

//模板
for(初始值,循环条件,一次循环后执行的代码){
//do something
} //for循环例子:
var count = 100;
for(var i = 0; i<count ; i++ ){
console.log(i);
}

5.break 与 continue

break 和 continue都是对循环语句进行精准的控制的语句,break表示中断整个循环,而continue表示中断此次循环下面的代码执行,并跳到下一次的循环。

//break例子
//代码的输出结果是在控制台输出一个0后,结束运行。
var i=0;
while(i<10){
console.log(i);
i++;
break;
} //continue例子
//每次遇到continue就会执行下一次循环,而continue后面的alert永远不会被执行,所以控制台会输出0-9,但是alert不会被执行。
var i =0;
while(i<10){
console.log(i);
i++;
continue;
alert(i);
}

6.switch

switch语句是一种判断语句,通过输入的内容来选择对应的处理方式,用于有限种的判断。

//switch例子
//根据i的值的不同而选择对应的case,每个case后面应加上break作为终结,不然会继续运行下去,直达遇到break。
switch(i){
case 1:
console.log(1);
break;
case 2:
console.log(2);
break;
case 3:
console.log(3);
break;
//default里代码是当没有以上case对应的值时执行,比如5
default:
alert("Other");
}

三、最后小结;

这次总结js的基本概念的一部分,我命之为躯壳,为什么说是躯壳,我们可以回顾一下,上面说的内容都是教人识字一样,告诉你们怎么写字(标识符写法,不能用关键字等规则),还有什么是语句(就教你们认识了什么是语句,给出的流程语句有哪些),给人感觉就是只有躯壳一样,那么下一篇便向其注入灵魂。

如果觉得这篇博客写得有点意思,就点个赞吧。

本文出自博客园:http://www.cnblogs.com/Ry-yuan/

作者:Ry(渊源远愿)

欢迎访问我的个人首页:我的首页

欢迎访问我的github:https://github.com/Ry-yuan/demoFiles

欢迎转载,转载请标明出处,保留该字段。

JavaScript--我发现,原来你是这样的JS(基础概念--躯壳,不妨从中文角度看js)的更多相关文章

  1. JS--我发现,原来你是这样的JS(二)(基础概念--躯壳篇--不妨从中文角度看js)

    一.介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第二篇(基础概念--躯壳篇),有着部分第三章的知识内容,当然其中还有我个人的理解. 红宝书这本书可以说是难啃的,要看完不容易,挺 ...

  2. JavaScript--我发现,原来你是这样的JS(基础概念--灵魂篇,一起来学js吧)

    介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第三篇(灵魂篇介绍),有着剩下的第三章的知识内容,当然其中还有我个人的理解.红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂 ...

  3. JS--我发现,原来你是这样的JS(三)(基础概念--灵魂篇)

    一.介绍 这是红宝书(JavaScript高级程序设计 3版)的读书笔记第三篇(灵魂篇介绍),有着剩下的第三章的知识内容. 红宝书这本书可以说是难啃的,要看完不容易,挺厚的,要看懂更不容易,要熟练js ...

  4. 尝试在你浏览器的Console(F12)中运行一下,你会发现页面被不同的颜色块高亮了(css调试中学到的js)

    现在到处都是JavaScript,每天都能知道点新东西.一旦你入了门,你总能从这里或是那里领悟到很多知识. 一旦我发现一些有意思的东西,我喜欢去感觉他们的源代码,看一看它是怎么办到的. 今天我想分享A ...

  5. 【JavaScript从入门到放弃】JS基础-01

    作为一个前端开发人员,JS是我们行走江湖吃饭的家伙.基本上一个前端人员能值多少大洋,就看JS了.虽然各种框架层出不穷,但是归根结底学好原生JS才是硬道理. 学习任何新东西其实都遵循 10000 小时成 ...

  6. 什么是JavaScript闭包终极全解之一——基础概念

    本文转自:http://www.cnblogs.com/richaaaard/p/4755021.html 什么是JavaScript闭包终极全解之一——基础概念 “闭包是JavaScript的一大谜 ...

  7. JavaScript随笔记(一)基础概念以及变量类型

    一.JavaScript中的基础概念 1.defer属性 一般我们在引用外部js文件的时候往往是将引用文件的位置放在标签当中,比如那么在标签中引入多个js文件时,浏览器会按照引入顺序加载执行这些引入的 ...

  8. 【 js 基础 】Javascript “继承”

    是时候写一写 "继承"了,为什么加引号,因为当你阅读完这篇文章,你会知道,说是 继承 其实是不准确的. 一.类1.传统的面向类的语言中的类:类/继承 描述了一种代码的组织结构形式. ...

  9. JS基础 复习: Javascript的书写位置

    爱创课堂JS基础 复习: Javascript的书写位置复习 js书写位置:body标签的最底部.实际工作中使用书写在head标签内一对script标签里.alert()弹出框.console.log ...

随机推荐

  1. global,$GLOBALS[' '] 全局, 浮动float跟margin的注意事项

    $a; global只能声明变量为全局,不能赋值,否则报错未定义:global $a; 相对于$GLOBALS['a'],写法是这样的,所有定义过的变量都存在这里: //浮动float跟margin的 ...

  2. Promise和异步编程

    前面的话 JS有很多强大的功能,其中一个是它可以轻松地搞定异步编程.作为一门为Web而生的语言,它从一开始就需要能够响应异步的用户交互,如点击和按键操作等.Node.js用回调函数代替了事件,使异步编 ...

  3. SpringBoot上传任意文件功能的实现

    一.pom文件依赖的添加 <dependencies> <dependency> <groupId>org.springframework.boot</gro ...

  4. 【RegExp】JavaScript中正则表达式判断匹配规则以及常用方法

    字符串是编程时涉及到的最多的一种数据结构,对字符串进行操作的需求几乎无处不在. 正则表达式是一种用来匹配字符串的强有力的武器.它的设计思想是用一种描述性的语言来给字符串定义一个规则,凡是符合规则的字符 ...

  5. sql必知必会-总结篇

    总结: 1.全书总览:数据查询.新增.删除:表的新增.更新操作:视图.存储过程.事务.索引的描述,高级sql功能:约束.触发器.索引 2.特色:术语简明定义,讲述最简单化.简而全面. 3.长进的地方: ...

  6. [补档][Jxoi2012] 奇怪的道路

    [Jxoi2012] 奇怪的道路 题目 传送门 :http://www.lydsy.com/JudgeOnline/problem.php?id=3195 小宇从历史书上了解到一个古老的文明.这个文明 ...

  7. python几种常见语法

    NO1.type自动匹配类型 name="zhangsan"age=18 print (type(name))#type自动匹配类型 print ("name:%s,ag ...

  8. Git异常情况汇总

    本篇博客总结下Git使用情况中遇到的异常情况并给出解决方案,关于Git的常用命令请移步我的另一篇博客<Git常用命令> 异常情况如下: 1.git远程删除分支后,本地git branch ...

  9. 13. Roman to Integer【leetcode】

    Roman to Integer Given a roman numeral, convert it to an integer. Input is guaranteed to be within t ...

  10. vue学习笔记(1)—— 组件化实现todoList

    一.环境搭建 1.npm 大型应用时推荐用npm安装,npm能很好的和webpack等模块打包器配合使用.具体安装步骤请参考网上的诸多教程.完成后使用如下命令安装vue. $ npm install ...