Передняя -JavaScript

Во-первых, введение JavaScript способа введения

Написать код в теге Script

<Script>
   // здесь , чтобы написать JS код 
</ SCRIPT>

Вводя дополнительный файл JS

<Сценарий SRC = "myscript.js"> </ скрипт>

Во-вторых, JavaScript язык спецификации

банкнота

// Это однострочный комментарий 

/ * 
Это 
многострочный комментарий 
* /

терминатор

JavaScript заявления в точку с запятой (;) в качестве терминатора.

Три, JavaScript язык основы

объявление переменной

имена переменных JavaScript могут быть использованы _, цифры, буквы, $ композиции, не может начинаться с цифры. 
Объявляет переменные уаг имя переменной; объявить формат
Имя вар = "Alex"; 
вар возраст = 18;

Примечание:

Имена переменных чувствительны к регистру.

Рекомендуемые правила верблюда именования.

Зарезервированные слова не могут быть использованы в качестве имен переменных.

Он добавил:

ES6 добавил пусть команду, используется для объявления переменных. Его использование аналогично вар, но переменная, объявленная действует только в том блоке, где команда пусть. Например: очень подходит счетчик цикла пусть команда.

для (пусть я = 0; я <arr.length; я ++) {...}

ES6 добавить сопзЬ объявить константу. После объявления, его значение не может быть изменено.

Const PI = 3,1415 ; 
PI // 3,1415

JavaScript не различает между целым числом и типом с плавающей точкой, есть только один цифровой вид. С плавающей запятой в целое преобразование можно также использовать ParseInt 

String (String)

вар а = "Hello"
 вар б = " мир; 
вар с = а + Ь; 
console.log (с); //得到Helloworld

 

// обычная строка 
`Это простая строка! `
 @ Многострочный текст 
` Это многострочный 
текст ` 
@ строка встроенная в переменной 
вар имени =«Джейсон», Time =«Сегодня» , 
` вводных $ {имя}, {Time Как вы $} «?

Логическое значение (Boolean)

В отличие от Python, истина и ложь в нижнем регистре.

вар А = истина ;
 вар B = ложь ;

 «» (пустая строка), 0, NULL , не определено, NaN 3 являются ложными.

нуль 和 не определено

null表示值是空,一般在需要指定或清空一个变量时才会使用,如 name=null;
undefined表示当声明一个变量但未初始化时,该变量的默认值是undefined。还有就是函数无明确的返回值时,返回的也是undefined。

数组

var a = [123, "ABC"];
console.log(a[1]);  // 输出"ABC"

类型查询

算数运算符

比较运算符

逻辑运算符

四、流程控制

if-else

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");
}

 

switch

for

for (var i=0;i<10;i++) {
  console.log(i);
}

while

var i = 0;
while (i < 10) {
  console.log(i);
  i++;
}

三元运算

五、函数

函数中的arguments参数

function add(a,b){
  console.log(a+b);
  console.log(arguments.length);
 console.log(arguments[0]);//arguments相当于将出传入的参数全部包含,这里取得就是第一个元素1
}

add(1,2)

结果:
3
2
1

函数的全局变量和局部变量

 

 

var city = "BeiJing";
function f() {
  var city = "ShangHai";
  function inner(){
    var city = "ShenZhen";
    console.log(city);
  }
  inner();
}

f();  //输出结果是?

ShenZhen
var city = "BeiJing";
function Bar() {
  console.log(city);
}
function f() {
  var city = "ShangHai";
  return Bar;
}
var ret = f();
ret();  // 打印结果是?

BeiJing
var city = "BeiJing";
function f(){
    var city = "ShangHai";
    function inner(){
        console.log(city);
    }
    return inner;
}
var ret = f();
ret();

ShangHai

自定义对象

创建对象

 

Date对象

创建Date对象

//方法1:不指定参数
var d1 = new Date();
console.log(d1.toLocaleString());
//方法2:参数为日期字符串
var d2 = new Date("2004/3/20 11:12");
console.log(d2.toLocaleString());
var d3 = new Date("04/03/20 11:12");
console.log(d3.toLocaleString());
//方法3:参数为毫秒数
var d3 = new Date(5000);
console.log(d3.toLocaleString());
console.log(d3.toUTCString());

//方法4:参数为年月日小时分钟秒毫秒
var d4 = new Date(2004,2,20,11,12,0,300);
console.log(d4.toLocaleString());  //毫秒并不直接显示

 Date对象的方法:

var d = new Date(); 
//getDate()                 获取日
//getDay ()                 获取星期
//getMonth ()               获取月(0-11)
//getFullYear ()            获取完整年份
//getYear ()                获取年
//getHours ()               获取小时
//getMinutes ()             获取分钟
//getSeconds ()             获取秒
//getMilliseconds ()        获取毫秒
//getTime ()                返回累计毫秒数(从1970/1/1午夜)

JSON对象

 

RegExp对象

// 定义正则表达式两种方式
var reg1 = new RegExp("^[a-zA-Z][a-zA-Z0-9]{5,11}");
var reg2 = /^[a-zA-Z][a-zA-Z0-9]{5,9}$/;

// 正则校验数据
reg1.test('jason666')
reg2.test('jason666')

/*第一个注意事项,正则表达式中不能有空格*/ 

// 全局匹配
var s1 = 'egondsb dsb dsb';
s1.match(/s/)
s1.match(/s/g)
var reg2 = /^[a-zA-Z][a-zA-Z0-9]{5,9}$/g
reg2.test('egondsb');
reg2.test('egondsb');
reg2.lastIndex;
/*第二个注意事项,全局匹配时有一个lastIndex属性*/

// 校验时不传参数
var reg2 = /^[a-zA-Z][a-zA-Z0-9]{5,9}$/
reg2.test();
reg2.test(undefined);

var reg3 = /undefined/;
reg3.test();

坑点集锦:
1.正则表达式中千万不要写空格
2.全局匹配模式lastindex
3.匹配的时候不传任何参数默认匹配undefined

рекомендация

отwww.cnblogs.com/zhengyuli/p/10957044.html