JS 简单介绍
JS 是一种编程语言,也可以写后端代码
JS 是一种轻量级的脚本语言,是可插入HTML页面的编程代码,可由浏览器执行
JS 注释
单行注释
多行注释
JS 引入方式
1. <script> 标签内直接书写 JS 代码
2. <script> 标签内 src 属性引入 JS 文件
JS 代码结构
JS 以分号作为语句的结束
但不写分号不会报错,但相当于没有结束符
JS 变量
定义变量
在 JS 中首次定义变量,需要使用关键词声明
1. 关键词
var name = 123;
2. es6 推出的新语法
let name = 456;
变量命名规范
命名规范
JS 命名规范
1. JS中变量命名可以是数字、字母或$
2. JS中变量的命名方式采用驼峰命名,如:
userName
passWord
而在python中采用下划线的命名,如:
user_name
pass_word
JS 中常量
python 默认没有真正意义上的常量,默认用全大写的变量表示常量
JS 中有真正意义上的常量
const pi = 3.14
JS 书写位置
JS 代码的书写位置
1. 单独写在 JS 文件中
2. 使用浏览器提供的 console 页面书写
在浏览器中书写 js 的时候 左上方的清空按钮只是清空当前页面 代码其实还在
如果你想要重新来 最好重新开设一个 页面
(在使用浏览器书写时 你自己书写的js代码推荐你在 自己的HTML页面打开)
JS 数值类型
数值类型(number)
var num1 = 11;
var num2 = 11.11;
typeof num1;
typeof num2;
typeof NaN;
类型转换
var test1 = "123.12";
parseFloat(test1);
parseInt(test1);
var test2 = "123abc456";
parseInt(test2);
var test3 = "abc123456";
parseInt(test3);
注意
注意:name 属性在 JS 语法中比较特殊,不论 var name = 任何数据类型,最后的数据类型都是字符串
字符串类型
var str1 = "奥特曼";
typeof str1;
var str2 = `
asd
asd
asd`
var name = "奥特曼";
var age = 18;
var ss = `My name is ${name} and my age is ${age} !`;
console.log(ss);
字符串拼接
var nameAge = name + age;
console.log(nameAge);
字符串中常用方法
------------------------------------------------------------------
字符串长度 .length()
消除字符串的空格 .trim() .trimleft() .trimeright()
返回第 N 个字符,索引从0开始 .chartAt(n)
拼接字符串 .concat()
子序列在字符串的索引 .indexOf()
根据索引取字符串子序列 .substring()
切片 .slice()
字符串全小写 .toLowerCase()
字符串全大写 .toUpperCase()
切割 .split()
-------------------------------------------------------------------
var test4 = "aoteman";
test4.length;
var test5 = " aoteman ";
test5.trim();
var test6 = " aoteman ";
test6.trimLeft();
var test7 = "ao|te|man|";
test7.trim("|");
test7.charAt(7);
test7.concat("a");
test7.indexOf("|");
test7.indexOf("|te|m");
test7.substring(2, 7);
test7.slice(2,7);
var test8 = "abcABC";
test8.toLowerCase();
test8.toUpperCase();
test7.split("|");
test7.split("|", 2);
布尔值
null 和 undefined 的区别
null 表示 值为空 一般指定或者情况一个变量时使用
name = 'json'
name= null
undefined
表示声明了一个变量但是没有做初始化操作(没有赋值)
函数没有指定返回值的时候 返回的也是 undefined
对象
数组
var lst = [1, "123", "abc", true];
typeof lst;
数组常见方法
---------------------------------------------
数组长度 .length
尾部插入 .push
尾部移除元素 .pop
头部添加元素 .unshift
头部移除元素 .shift
切片 .slice
反转 .reverse
拼接成字符串 .join
连接成数组 .concat
排序 .sort
数组所有元素 .forEach
从索引 N 往后删除 M 个元素 .splice(N, M)
----------------------------------------------
lst.length;
lst.push(false);
lst;
lst.pop();
lst;
lst.unshift("asd");
lst;
lst.shift();
lst;
lst.slice(3);
lst.reverse();
lst.join();
lst.concat([111,222]);
var lst1 = [1,3,2,9,5];
lst1.sort();
lst1.forEach( function (value) {
console.log(value)}, lst1);
l.forEach(function (value) {
console.log(value)}, l);
l.forEach(function (value,index) {
console.log(value,index)}, l);
l.forEach(function (value,index,arr) {
console.log(value, index, arr)}, l);
l.splice(0,3);
l.splice(0,3,777);
自定义对象
字典形式
var obj1 = {"name": "aoteman", "age":18};
typeof obj1;
obj1.name;
obj1.age;
关键词声明
var obj2 = new Object();
obj2.name = "123";
obj2.age = 18;
obj2;
其他 JS 内部对象
Date 对象
var d1 = new Date();
d1.toLocaleString();
d6.getDate();
d6.getDay();
d6.getMonth();
d6.getFullYear();
d6.getHours();
d6.getMinutes();
d6.getSeconds();
d6.getMilliseconds();
d6.getTime();
JSON 对象
JSON.stringify();
JSON.parse();
let obj3 = {"name": 123, "age":456};
res = JSON.stringify(obj3);
JSON.parse(obj3);
比较运算符
1 == "1";
1 === "1";
逻辑运算符
5 && "5";
0 || 1;
!5 && "5";
赋值运算符
运算符
var x = 10;
var res1 = x++;
res1;
var res2 = ++x;
res2;
流程控制
if 判断
if (age>18) {
console.log("来啊 来啊")
};
if (age>18){
console.log("123")
}else{
console.log("456")
}
if (age<18){
console.log("123")
}else if(age<24){
console.log("456")
}else {
console.log("789")
};
for 循环
for (let i=0;i<10;i++) {
conlose.log(i);
}
while 循环
var i = 0;
while (i<100) {
conlose.log(i);
i++;
}
switch 语句
var num = 2;
switch (num) {
case 0:
console.log("喝酒");
break;
case 1:
console.log("唱歌");
break;
case 2:
console.log("再见");
break;
default:
console.log("条件没有匹配上,默认走的流程")
}
三元运算符
var res = 1>2?1:3;
函数
在python中定义函数需要 def
在 js 中定义函数需要 function
格式
function (形参1,形参2......) {函数体代码}
无参函数
function func1() {
console.log("hello world")
}
func1()
有参函数
function func2(a,b) {
console.log(arguments)
if (arguments.length < 2){
console.log("传少了")
}else if (arguments.length>2) {
console.log("传多了")
}else{
console.log(a,b)
}
}
func2(1,2)
函数返回
function index() {
return 666
}
匿名函数
function () {
console.log("hello world")
}
箭头函数
var func3 = v => v;
var func3 = function (v) {
return v
}
var func4 = (arg1,arg2) => arg1+arg2
var fun4 = function (arg1,arg2) {
return arg1+arg2
}
|