2021-09-07

代码规范:

  • 变量名推荐使用驼峰法来命名(lowerCamelCase)

  • 变量名不要以 $ 作为开始标记,会与很多 JavaScript 库冲突

  • 通常运算符 ( = + - * / ) 前后需要添加空格

  • 通常使用 4 个空格符号来缩进代码块(不推荐使用 TAB 键来缩进,因为不同编辑器 TAB 键的解析不一样)

  • 一条语句通常以分号作为结束符(可选)

  • 复杂语句的通用规则:

    • 将左花括号放在第一行的结尾。
    • 左花括号前添加一空格。
    • 将右花括号独立放在一行。
    • 不要以分号结束一个复杂的声明。
  • 对象定义的规则:

    • 将左花括号与类名放在同一行。
    • 冒号与属性值间有个空格。
    • 字符串使用双引号,数字不需要。
    • 最后一个属性-值对后面不要添加逗号。
    • 将右花括号独立放在一行,并以分号作为结束符号。

1、数据类型

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。

引用数据类型:对象(Object)、数组(Array)、函数(Function)。

字符串:单引号/双引号引用的任意文本。“test”、‘test’

数字和字符串相加,结果为字符串

null和undefined:值相等,类型不相等

null表示一个空对象引用,undefined是一个没有设置值的变量,是所有没有赋值变量的默认值

var person = null; // 值为 null(空), 但类型为object

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

typeof() //返回数据类型

布尔值:true、false

2、注释

单行注释:双斜杠 // 后的内容将会被浏览器忽略

var length = 16; // Number 通过数字字面量赋值

多行注释:以 /* 开始,以 */ 结尾

/* 注释注释注释

此行也不会执行 */

3、let声明变量和var声明变量的区别

变量:用于存储信息的"容器"。

let允许你声明一个作用域被限制在块级中的变量、语句或者表达式。在Function中局部变量推荐使用let变量,避免变量名冲突。

var声明的变量的作用域是整个封闭函数。

https://blog.csdn.net/nfer_zhuang/article/details/48781671

4、作用域

可访问变量,对象,函数的集合。

局部变量:在函数中用var声明的变量

全局变量:在函数外用var声明的变量,没有声明就使用的变量默认为全局变量

5、比较运算符

=== 为绝对相等,即数据类型与值都必须相等。

所有的 JavaScript 对象都会从一个 prototype(原型对象)中继承属性和方法

Date 对象从 Date.prototype 继承。
Array 对象从 Array.prototype 继承。
Person 对象从 Person.prototype 继承

6、json与js对象

json是js对象的字符串表示方法。json本质是一个字符串

var obj = {a: ‘Hello’, b: ‘Java Script’}; //这是一个js对象
var json = ‘{a: ‘Hello’, b: ‘Java Script’}’; //这是一个json字符串

将json字符串转换成js对象,使用JSON.parse()方法

var JSON.parse(’{a: ‘Hello’, b: ‘Java Script’}’); //结果是一个对象,{a: ‘Hello’, b: ‘Java Script’}

将js对象转换成json,使用JSON.stringify()方法
var JSON.stringify({a: ‘Hello’, b: ‘Java Script’}); //结果是一个JSON格式的字符串,’{a: ‘Hello’, b: ‘Java Script’}’

7、数字(Number)对象

toExponential() 返回一个数字的指数形式的字符串,如:1.23e+2

toFixed() 返回指定小数位数的表示形式

var a=123;
b=a.toFixed(2); // b=“123.00”

toPrecision() 返回一个指定精度的数字。如下例子中,a=123 中,3会由于精度限制消失:

var a=123;
b=a.toPrecision(2); // b=“1.2e+2”

8、字符串(String)对象

var str=‘hello’;

str.length //返回字符串的长度

str.indexOf() //定位字符串中某一个指定的字符首次出现的位置,如果没找到返回-1

str.lastIndexOf() //在字符串末尾开始查找字符串出现的位置

str.match(“ll”) //用来查找字符串中特定的字符,并且如果找到的话,则返回这个字符

str.split("|") //使用 | 分隔字符串

str.trim() //删除字符串的头尾空白符,空白符包括:空格、制表符 tab、换行符等其他空白符等。不会改变原字符串,不适用于 null, undefined, Number 类型

str.subString(from,to) //提取字符串中介于两个指定下标之间的字符,返回结果包括开始处的字符,不包括结尾处的字符,to可选,省略该参数,那么返回的子串会一直到字符串的结尾

9、日期(Date)对象

getTime() // 返回从 1970 年 1 月 1 日至今的毫秒数

getDay() //从Date 对象返回一周中的某一天 (0 ~ 6)

getDate() //从Date对象返回一个月中的某一天 (1 ~ 31)

toUTCString() //根据世界时 (UTC) 把 Date 对象转换为字符串,‘Thu, 29 Jul 2021 10:01:14 GMT’

var myDate=new Date(); //设置一个5天后的日期,如果增加天数会改变月份或者年份,那么日期对象会自动完成这种转换

myDate.setDate(myDate.getDate()+5);

10、数组(Array)对象(用于在变量中存储多个值)

①:创建一个数组,有如下3种方式

var myBooks = [“math”,“english”,“chinese”];

var myBooks = new Array(“math”,“english”,“chinese”);

var myBooks = new Array();

myBooks[0] = math;

myBooks[1] = english;

myBooks[2] = chinese;

②:可以指定数组名及索引号码访问数组中的元素

var name = myBooks[0]; //访问数组myBooks的第一个元素

③:修改数组中元素的值

myBooks[0] = “java”; //修改数组myBooks的第一个元素为java

④:数组中可以包含对象元素、函数、数组

⑤:常用的数组的属性、方法

myBooks.length //数组中元素的个数

myBooks.indexOf(“english”,0) // 从0开始检索,第一次检索到"english" 的索引值,没有返回-1

array1.concat(array2,array3,…,arrayX) //连接2个或多个数组,返回一个新的数组,不会改变原来的数组;

array1.filter(function(currentValue,index,arr), thisValue) // currentValue必须,当前元素的值;返回数组,包含了符合条件的所有元素。如果没有符合条件的元素则返回空数组。array1中的每个元素都执行一遍函数function,符合条件,则返回

array1.forEach(function(currentValue,index,arr), thisValue) //currentValue必须,当前元素的值;用于调用数组的每个元素,并将元素传递给回调函数。返回值:undefined

array1.map(function(currentValue,index,arr), thisValue) //currentValue必须,当前元素的值;返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。原数组不变

11、算数(Math)对象

① Math.round(X); 方法: 可把一个数字X四舍五入为最接近的整数 ,X只能为数值 用法:Math.round(4.3); 输出 4 ; Math.round(2.50); 输出 3

② Math.random() ; 方法:返回介于 0(包含) ~ 1(不包含) 之间的一个随机数

③Math.floor(x); 方法:返回小于等于x的最大整数(向下取整),x可以为任意数值或表达式; Math.(4.8); 输出4; Math.floor((Math.random()*100)+1); 输出1~100之间的随机整数,并向下取整

12、代码块

以左花括号开始,以右花括号结束。代码块的作用是一并地执行语句序列。

代码换行使用反斜杠 \ document.write("你好 \

北京!");

13、函数(function)

parseInt() 函数:parseInt(string, radix) 解析一个字符串,并返回一个整数。 https://www.runoob.com/jsref/jsref-parseint.html

Object.keys() :返回一个数组 ,传入字符串,返回索引;传入对象,返回属性名

14、JavaScript用法

① 使用之间的 JavaScript 代码。

② 需要使用外部文件时,在

③ 输出数据的方式:

window.alert() 弹出警告框;

document.write() 将内容写入HTML文档中; document.write(Date());

innerHTML 写入到HTML元素; document.getElementById(“demo”).innerHTML = “段落已修改。”;

console.log() 写入浏览器的控制台;

④ switch语句; break 来阻止代码自动地向下一个 case 运行

switch(n)
{
     case 1:
             执行代码块 1
             break;
    case 2:
             执行代码块 2

            break;
    default:case 1case 2 不同时执行的代码
}

显示今天的星期名称:

var d = new Date().getDay();
switch (d)
{
case 0:x ="今天是星期日";
break;
case 1:x ="今天是星期一";
break;
case 2:x ="今天是星期二";
break;
case 3:x ="今天是星期三";
break;
case 4:x ="今天是星期四";
break;
case 5:x ="今天是星期五";
break;
case 6:x ="今天是星期六";
break;
}

⑤ 循环

For 循环:语句1(代码块)开始前执行,初始化循环中所用的变量 (var i=0);语句2定义运行循环(代码块)的条件(i < 5);语句3 在循环(代码块)已被执行后执行(i ++ )

希望创建循环时使用,循环代码块一定的次数,适合遍历数组、字符串等

for (语句 1; 语句 2; 语句 3)
{
    被执行的代码块
}

For/In循环: 会自动跳过那些没被赋值的元素

遍历对象的属性,针对每个属性执行一次

for  (variable in object)
{     
    执行的代码……
}

While循环:在指定条件为真时循环执行代码块

遍历数组的时,如果数组中有 0,null,false,undefined 或者空字符串等在 js 中被认为等价于 false 的值,会提前结束遍历,可以修改条件为判断数组长度可避免该问题

while (条件)
{
    执行的代码
}

do/While循环:while 循环的变体。该循环会在检查条件是否为真之前执行一次代码块,然后如果条件为真的话,就会重复这个循环,代码至少会执行一次。

别忘记增加条件中所用变量的值,否则循环永远不会结束!

do 
{
    执行的代码
}
while (条件)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值