javascript 学习简记

1 篇文章 0 订阅

今天在卸载网易有道云笔记时候,偶然看到之前留存的相关学习笔记,
删除可惜,索性博客备份一下。

数据类型

在 JavaScript 中有 5 种不同的数据类型:

  • string
  • number
  • boolean
  • object
  • function

3 种对象类型:

  • Object
  • Date
  • Array

2 个不包含任何值的数据类型:

  • null
  • undefined
var person = null  // 值为null ,但类型为对象

var person = undefined  //  值为undefined ,类型为undefined

typeof undefined       // undefined

typeof null         // object

null === undefined      // false

// null和undefined的值相等 但是类型不同

null == undefined      // true

循环结构

  • for

  • while / do while

  • switch

break / continue {

 // 可带标签

break:list

// 跳出list  

// break可跳出任何JavaScript代码块

continue

 // 只能用于循环内

}

typeof ()

用于检测变量的数据类型的

typeof "John"        // 返回 string 

typeof 3.14         // 返回 number

typeof false         // 返回 boolean

typeof [1,2,3,4]       // 返回 object

typeof {name:'John', age:34} // 返回 object
  • constructor属性 返回所有JavaScript变量的构造函数
"John".constructor         // 返回函数 String() { [native code] }

(3.14).constructor         // 返回函数 Number() { [native code] }

false.constructor         // 返回函数 Boolean() { [native code] }

[1,2,3,4].constructor       // 返回函数 Array()  { [native code] }

{name:'John', age:34}.constructor // 返回函数 Object() { [native code] }

new Date().constructor       // 返回函数 Date()  { [native code] }

function () {}.constructor     // 返回函数 Function(){ [native code] }

类型转换

转为字符串

String(x)     // 将变量 x 转换为字符串并返回

x.toString()

转为数字

  • 全局方法 Number() 可以将字符串转换为数字。
  • 字符串包含数字(如 “3.14”) 转换为数字 (如 3.14).
  • 空字符串转换为 0。
  • 其他的字符串会转换为 NaN (不是个数字)。
Number("3.14")  // 返回 3.14

Number(" ")    // 返回 0 

Number("")    // 返回 0

Number("99 88")  // 返回 NaN

Number(false)   // 返回 0

Number(true)   // 返回 1

日期转为数字:

d = new Date();

Number(d)     // 返回 1404568027739

d = new Date();

d.getTime()    // 返回 1404568027739

自动转换类型

  • 当 JavaScript 尝试操作一个 “错误” 的数据类型时,会自动转换为 “正确” 的数据类型
5 + null  // 返回 5     null 转换为 0

"5" + null // 返回"5null"  null 转换为 "null"

"5" + 1   // 返回 "51"   1 转换为 "1" 

"5" - 1   // 返回 4     "5" 转换为 5

自动转换为字符串

  • 当你尝试输出一个对象或一个变量时 JavaScript 会自动调用变量的 toString() 方法
document.getElementById("demo").innerHTML = myVar;

myVar = {name:"Fjohn"} // toString 转换为 "[object Object]"

myVar = [1,2,3,4]    // toString 转换为 "1,2,3,4"

myVar = new Date()   // toString 转换为 "Fri Jul 18 2014 09:08:55 GMT+0200"

正则表达式

什么是正则表达式?

  • 正则表达式是由一个字符序列形成的搜索模式。
  • 当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。
  • 正则表达式可以是一个简单的字符,或一个更复杂的模式。
  • 正则表达式可用于所有文本搜索和文本替换的操作

语法

/正则表达式主体/修饰符(可选)

  • 其中修饰符是可选的。

  • var patt = /runoob/i

  • /runoob/i 是一个正则表达式。

  • runoob 是一个正则表达式主体 (用于检索)。

  • i 是一个修饰符 (搜索不区分大小写)。

    • i 执行对大小写不敏感的匹配。
    • g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
    • m 执行多行匹配。

使用字符串方法

search()
var str = "Visit Runoob!";  var n = str.search(/Runoob/i);

\--------------------------------

var str = "Visit Runoob!"; 

// 可以使用字符串作为参数 自动转换为正则表达式 var n = str.search("Runoob");

// n 返回 6

replace()

var str = document.getElementById("demo").innerHTML;  var txt = str.replace(/microsoft/i,"Runoob");

//  使用正则表达式且不区分大小写将字符串中的 Microsoft 替换为 Runoob :

**//  return** Visit Runoob!

var str = document.getElementById("demo").innerHTML;  var txt = str.replace("Microsoft","Runoob");

// 同上 字符串为参数
正则表达式模式
  • 方括号用于查找某个范围内的字符:
表达式
  • [abc] 查找方括号之间的任何字符。
  • [0-9] 查找任何从 0 至 9 的数字。
  • (x|y) 查找任何以 | 分隔的选项。
元字符(元字符是拥有特殊含义的字符:)
  • \d 查找数字。
  • \s 查找空白字符。
  • \b 匹配单词边界。
  • \uxxxx 查找以十六进制数 xxxx 规定的 Unicode 字符量词
  • n+ 匹配任何包含至少一个 n 的字符串。
  • n* 匹配任何包含零个或多个 n 的字符串。
  • n? 匹配任何包含零个或一个 n 的字符串。
Test()方法
  • test() 方法是一个正则表达式方法。

  • test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。

    以下实例用于搜索字符串中的字符 “e”:

var patt = /e/;

patt.test("The best things in life are free!");

// true
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值