前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JavaScript基础

JavaScript基础

作者头像
人生不如戏
发布2018-04-10 15:34:17
8270
发布2018-04-10 15:34:17
举报
文章被收录于专栏:抠抠空间抠抠空间

一、JavaScript简介

  • 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中),后将其改名ScriptEase(客户端执行的语言)。
  • Netscape(网景)接收Nombas的理念,(Brendan Eich)在其Netscape Navigator 2.0产品中开发出一套livescript的脚本语言。Sun和Netscape共同完成,后改名叫JavaScript。
  • 微软随后模仿在其IE3.0的产品中搭载了一个JavaScript的克隆版叫Jscript。
  • 为了统一三家,ECMA(欧洲计算机制造协会)定义了ECMA-262规范.国际标准化组织及国际电工委员会(ISO/IEC)也采纳 ECMAScript 作为标准(ISO/IEC-16262)。从此,Web 浏览器就开始努力(虽然有着不同的程度的成功和失败)将 ECMAScript 作为 JavaScript 实现的基础。
  • ECMA-262 是 JavaScript 标准的官方名称。
  • JavaScript 是脚本语言
  • JavaScript 是一种轻量级的编程语言。
  • JavaScript 是可插入 HTML 页面的编程代码。
  • JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。

二、JavaScript引入方式

  1. 在script标签内写代码
  2. 引入额外的JS文件

三、JavaScript语言规范

  1. 注释 // 这是单行注释 /* 这是 多行注释 */
  2. 语法
  3. JavaScript的变量名可以使用_,数字,字母,$组成,不能以数字开头。
  4. 声明变量使用 var 变量名; 的格式来进行声明
  5. JavaScript中的语句要以分号(;)为结束符。
代码语言:javascript
复制
var name = "Alex";
var age = 18; 

注意:

变量名是区分大小写的。

推荐使用驼峰式命名规则。

保留字不能用做变量名。

代码语言:javascript
复制
abstract
boolean
byte
char
class
const
debugger
double
enum
export
extends
final
float
goto
implements
import
int
interface
long
native
package
private
protected
public
short
static
super
synchronized
throws
transient
volatile

四、JavaScript数据类型

  1. 动态类型 JavaScript拥有动态类型 var x; // 此时x是undefined var x = 1; // 此时x是数字 var x = "Alex" // 此时x是字符串
  2. 数字类型 JavaScript不区分整型和浮点型,就只有一种数字类型。 var a = 12.34; var b = 20; var c = 123e5; // 12300000 var d = 123e-5; // 0.00123
  3. 布尔类型 var a = true; var b = false;   区别于Python,true和false都是小写。    ""(空字符串)、0、null、undefined、NaN都是false。
  4. 字符串类型 var a = "Hello" var b = "world; var c = a + b; console.log(c); // 得到Helloworld 方法 说明 .length 返回长度 .trim() 移除空白 .trimLeft() 移除左边的空白 .trimRight() 移除右边的空白 .charAt(n) 返回第n个字符 .concat(value, ...) 拼接 .indexOf(substring, start) 子序列位置 .substring(from, to) 根据索引获取子序列 .slice(start, end) 切片 .toLowerCase() 小写 .toUpperCase() 大写 .split(delimiter, limit) 分割
  5. 数组 类似于Python中的列表。 var a = [123, "ABC"]; console.log(a[1]); // 输出"ABC" 方法 说明 .length 数组的大小 .push(ele) 尾部追加元素 .pop() 获取尾部的元素 .unshift(ele) 头部插入元素 .shift() 头部移除元素 .slice(start, end) 切片 .reverse() 反转 .join(seq) 将数组元素连接成字符串 .concat(val, ...) 连接数组 .sort() 排序 遍历数组的方法 var a = [10, 20, 30, 40]; for (var i=0;i<a.length;i++) { console.log(i); }
代码语言:javascript
复制
/*如果调用sort方法时没有传入参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。

如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:

若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
若 a 等于 b,则返回 0。
若 a 大于 b,则返回一个大于 0 的值。
*/

// 根据上面的规则自行实现一个排序函数:


function sortNumber(a,b) {
  return a - b
}

// 调用sort方法时将定义好的排序函数传入即可。
stringObj.sort(sortNumber)
复制代码
  1. null和undefined
    • null表示值是空,一般在需要指定或清空一个变量时才会使用,如 name=null;
    • undefined表示当声明一个变量但未初始化时,该变量的默认值是undefined。还有就是函数无明确的返回值时,返回的也是undefined。

    null表示变量的值是空,undefined则表示只声明了变量,但还没有赋值。

  2. 查询类型的方法 typeof "abc" // "string" typeof null // "object" typeof true // "boolean" typeof 123 // "number" typeof是一个一元运算符(就像++,--,!,- 等一元运算符),不是一个函数,也不是一个语句。 对变量或值调用 typeof 运算符将返回下列值之一:
    • undefined - 如果变量是 Undefined 类型的
    • boolean - 如果变量是 Boolean 类型的
    • number - 如果变量是 Number 类型的
    • string - 如果变量是 String 类型的
    • object - 如果变量是一种引用类型或 Null 类型的

五、运算符

  • 算数运算符 + - * / % ++ --
  • 比较运算符 > >= < <= != == === !== 注意: 1 == “1” // true 1 === "1" // false
  • 逻辑运算符 && 与 || 或 ! 非
  • 赋值运算符 = += -= *= /=

六、流程控制

  1.  if-else var a = 10; if (a > 5){ console.log("yes"); }else { console.log("no"); }
  2. if -> else if -> else var a = 10; if (a > 5){ console.log("a > 5"); }else if (a < 5) { console.log("a < 5"); }else { console.log("a = 5"); }
  3. switch d = 2; switch(d){ case 0: console.log('000000000'); break; case 1: console.log('111111111'); case 2: console.log('222222222'); }  
  4.  for for(i = 0;i<10;i++){ console.log('---'); }
  5. while var i = 0; while (i < 10) { console.log(i); i++; }
  6. 三元运算 var a = 1; var b = 2; var c = a > b ? a : b
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-03-09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、JavaScript简介
  • 二、JavaScript引入方式
  • 三、JavaScript语言规范
  • 四、JavaScript数据类型
  • 五、运算符
  • 六、流程控制
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档