当前位置: 首页 > news >正文

徐汇网站制作百度seo学院

徐汇网站制作,百度seo学院,台州网站建设公司,河北靠谱的网站建设公司JavaScript基本语法 1、变量1.1、简介1.2、变量命名规则1.3、JS的关键字和保留字1.4、声明提升 2、JavaScript数据类型2.1、基本类型2.2、引用类型2.3、两种类型的区别2.4、字符串常用方法 3、数据类型转换 1、变量 1.1、简介 在 JavaScript 中声明一个新变量的方法是使用关键…

JavaScript基本语法

      • 1、变量
        • 1.1、简介
        • 1.2、变量命名规则
        • 1.3、JS的关键字和保留字
        • 1.4、声明提升
      • 2、JavaScript数据类型
        • 2.1、基本类型
        • 2.2、引用类型
        • 2.3、两种类型的区别
        • 2.4、字符串常用方法
      • 3、数据类型转换

1、变量

1.1、简介

在 JavaScript 中声明一个新变量的方法是使用关键字 letconstvar,如下:

var:

// var可以重复定义同一个变量,没有块级作用域,但是有函数作用域,变量类型由最近一次对变量赋值的数据类型决定
// 注意:变量作用域是在ES6才有的。通过 var 声明的变量会提升到顶端,而let不会
// myVar 在这里能被引用
for (var myVar = 0; myVar < 5; myVar++) {
// myVar 整个函数中都能被引用
}
// myVar 在这里能被引用

let:

// 类似于var定义变量,区别是let不能重复定义同一个变量,且let有块级作用域// myLet 在这里不能被引用
for (let myLet = 0; myLet < 5; myLet++) {
// myLet 只能在这里引用
}
// myLet 在这里不能被引用

const:

// 定义了对值的常量引用,不能更改常量原始值,但我们可以更改常量对象的属性,有块级作用域 
// 注:必须在声明时赋值const PI = 3.14; // 设置 PI 的值
PI = 1; // 将会抛出一个错误因为你改变了一个常量的值。const MY_OBJECT = {"key": "value"};
MY_OBJECT.key = "otherValue"; // 成功修改属性值const MY_ARRAY = ['HTML','CSS'];
MY_ARRAY.push('JAVASCRIPT'); // 成功添加元素 ['HTML','CSS','JAVASCRIPT']

1.2、变量命名规则

  1. 只能由数字、字母、下划线和 $ 组成,但不能以数字开头;
  2. 不建议使用关键字和保留字;
  3. 严格区分大小写,A 和 a 是两个不同的变量。

1.3、JS的关键字和保留字

  • 切记:自己定义的变量名不得使用JS中的关键字和保留字。
  • 常用关键字:typeof 检测数据类型, var 定义变量, debugger 调试, eval 计算值的函数。

1.4、声明提升

JavaScript 中,函数及变量的声明都将被提升到函数的最顶部,但函数表达式并不会提升;

/* 函数声明 */
foo(); // "bar"
function foo() {console.log("bar");
}/* 函数表达式 */
baz(); // 类型错误:baz 不是一个函数
var baz = function() {console.log("bar2");
};
  • JavaScript 中,变量可以先使用后声明;
  • 由于存在变量提升,一个函数中所有的 var 语句应尽可能地放在接近函数顶部的地方,提高代码清晰度;
  • 在ES6中,let 和 const 同样 会被提升 变量到代码块的顶部但是不会被赋予初始值;
  • 全局变量是 全局对象 的属性。在网页中默认的全局对象是 window ,所以我们可以用形如 window.*variable *的语法来设置和访问全局变量。

2、JavaScript数据类型

JavaScript数据类型分为:基本类型和引用类型。

2.1、基本类型

类型名称描述
Number数值类型,所有的数字不分大小、不分整浮、不分正负,都是数值类型。
String字符串类型,使用双引号或者单引号包裹的值。
Boolean布尔类型(true & false)。
Undefined1、表示定义了变量没有赋值,默认值为 undefined;
2、变量声明提升时,变量的值也为 undefined;
3、undefined 的类型也为 undefined;
4、undefined 值在布尔类型环境中会被当作 false。
Null表示变量赋了个空值,用 typeof 检测 null,结果为 object;
undefined派生于null,undefined和null的值相等;
对一个 null 变量求值时,空值 null 在数值类型环境中会被当作 0 来对待,而布尔类型环境中会被当作 false。
SymbolSymbol 是 ES6 引入的一种新的原始数据类型,表示独一无二的值。

2.2、引用类型

类型名称描述
Object存储的是对象属性集合,每个属性都是一个"键-值"对。
ArrayArray 对象支持在单个变量名下存储多个元素,大小可变,数据类型不限。
FunctionFunction 对象,调用它的构造函数可以动态创建函数。

2.3、两种类型的区别

类型基本类型引用类型
不可改变可以改变
属性和方法不能添加能添加
存储值地址(指针)
比较值的比较地址的比较

2.4、字符串常用方法

方法名称描述
charAt()获取指定位置的字符
substring()提取字符串中,介于两个指定下标之间的字符
substr()在字符串中指定的位置处,提取指定数目的字符
slice()提取字符串的某个部分,类似于 substring() ,不同之处:
1、substring() 可以自动交换参数的位置,而 slice()不行
2、slice()的第一个参数可以是负数,而 substring()不行
toUpperCase()把字符串转换为大写
toLowerCase()把字符串转换为小写
indexOf返回字符串中指定字符首次出现的索引
split()将字符串转成数组

整数字面量:

0, 117 and -345 (十进制,基数为 10)
015, 0001 and -0o77 (八进制,基数为 8)
0x1123, 0x00111 and -0xF1A7 (十六进制,基数为 16"hex")
0b11, 0b0011 and -0b11 (二进制,基数为 2)

浮点数字面量:

3.14
-.2345789 // -0.23456789
-3.12e+12  // -3.12*10^12
.1e-23    // 0.1*10^(-23)=10^(-24)=1e-24

模板字面量:

//模板字面量使用反引号 `` 来定义字符串  
let text = `Hello World!`;
//可以在字符串中同时使用单引号和双引号
let text = `He's often called "Johnny"`;
//允许多行字符串
let text =
`The quick
brown fox
the lazy dog`;

字符串插值${...} ,用真实值自动替换表达式就叫字符串插值,允许字符串中的变量与表达式

let firstName = "Bill";  let lastName = "Gates";
let text = `Welcome ${firstName}, ${lastName}!`;let price = 10;  let VAT = 0.25;
let total = `Total: ${(price * (1 + VAT)).toFixed(2)}`;

3、数据类型转换

方法名称描述
Number()将其他类型的值转换为数字 强制类型转换
parseInt()可以将参数转成整数
parseFloat()可以将参数转成浮点数
String()将其他类型的值转换成字符串 强制类型转换
toString()将其他类型的值转换成字符串。 .toString() 和 String()的区别:
1、toString()无法转换 null 和 undefined,String()可以转换 null 和 undefined
2、toString()可增加进制参数,将字符串进行进制转换,String()不能转换进制
3、写法不同,可参考上述例子
Boolean()将其他类型的值转换为布尔值 强制类型转换

注意:

  1. parseInt()函数,对其参数是进行除法操作时,其结果为整除值,参数是浮点数会丢失精度;

  2. 如果字符串不能转换为数值,则返回结果NaN(Not a Number);

  3. 字符串以数字开头,转换为数值的过程中碰到第一个非数字字符时停止转换;

  4. 在转换字符为含有小数的数值中,第一个小数点有效,其后的其他小数点就无效;

  5. 把字符串转换为boolean类型,空字符串转换后结果为false,其他非空字符串,转换后结果为true;

  6. 把number类型转换为boolean时,数值0转换后结果为false,非零值(正负均可)转换后的值为true。

扩展:

  1. toFixed(m):指定数值型数据保留m位小数,对m位后进行四舍五入;
  2. isNaN():用来检测一个值是否为 NaN ,返回布尔值。
http://www.khdw.cn/news/47493.html

相关文章:

  • 最火的网络销售平台公司关键词排名优化
  • 网站建设合同付款比例如何做市场调研和分析
  • 做外贸怎样浏览国外网站站长之家音效
  • 破解版游戏盒子大全广州百度首页优化
  • 建站是什么专业今天国内新闻10条
  • 扬州个人做网站seo技巧优化
  • 做公益网站需要哪些部门认证网站友情链接的好处
  • 旅游网站开发建设方案济南seo公司报价
  • 郑州做网站_郑州免费建站百度seo课程
  • 贵州网站建设系统网络推广营销技巧
  • 哪个网站的前台背景墙做的好html网页制作代码大全
  • project 网站开发计划友链交易网
  • 应用制作下载优化设计答案四年级上册语文
  • wordpress一年后续费站长工具seo综合查询全面解析
  • 网站里面的视频功能怎么做培训网站
  • axure做交易网站网页版百度
  • 单位网站建设情况说明软文新闻发布网站
  • flash网站的制作seo优化在线
  • 长沙网站制作多少钱可以访问违规网站的浏览器
  • 手表拍卖网站公众号seo排名优化
  • 广东企业备案 网站建设方案书湖南专业seo公司
  • 毕业设计 网站开发简单吗百度搜索量最大的关键词
  • 协同软件开发郑州seo技术服务顾问
  • 网站怎么做网页乔拓云智能建站平台
  • wordpress 字体插件seo关键词快速排名
  • 哪个网站专题做的好淘宝网官方网站
  • 做网站需要交管理费吗站长统计网站统计
  • 中国建筑业协会seo关键词排名优化
  • 手机做服务器建网站买域名要多少钱一个
  • 做网站花的钱和优化网站有关系吗在线识别图片