js-语法

数据类型

  • 数字
    整数、浮点数
  • 字符串
    单引号、双引号
    可以这样引入变量作为字符串形式:"+变量+";
    如果外面有引号,则如下:'"+变量+"'或" "+变量+" "
  • 布尔型
    true、false
  • null型
    null
  • undefined 型
    undefined

变量作用范围

js默认情况下,变量以函数为范围。

  • var
    定义变量时加 var表示局部变量,否则为全局变量。

常量

同样用const定义

函数

  • 函数定义
    js中,函数有三种定义方法。
  1. 用function即可声明函数
function myFunction(a, b) {
    return a * b;
}
  1. 可以通过一个表达式定义函数
var x = function(a, b) {
    return a * b;
}
  1. 可以通过js内置的函数构造器(Function())定义
var myFunction = new Function("a", "b", "return a * b");
  • 函数存储
    js中,函数表达式可以存储在变量中,如上述方法二中的x;
    在函数表达式存储在变量后,变量也可作为一个函数使用,通过调用变量名即可调用该函数。
  • 自调用
    函数表达式可以 "自调用",无需借助其他变量,已声明的函数则不能。
    自调用的方法为先给表达式自身加一组括号,再在表达式后面紧跟 ()
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>

<p>函数可以自动调用:</p>
<p id="demo"></p>
<script>
(function () {
    document.getElementById("demo").innerHTML = "Hello! ";
})();
</script>

</body>
</html>
  • 函数?对象?
    js中,使用 typeof 操作符判断函数类型将返回 "function" ,但函数本身也具有属性和方法,可以称作对象
    函数定义作为对象的属性,称之为对象方法。
    函数如果用于创建新的对象,称之为对象的构造函数。
  • 箭头函数
    ES6中新添加的函数形式,比普通函数表达式更简洁。
var a = function(x, y) {
     return x + y;
}

var b = (v,h) => v + h;

正则表达式

  • 语法
    /正则表达式主体/修饰符(可选)
  • 修饰符
    -- i:执行对大小写不敏感的匹配。
    -- g:执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。
    -- m:执行多行匹配。
  • 字符串方法
    -- search():用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。
          可使用字符串作为参数,字符串参数会转换为正则表达式。
    -- replace():用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
  • 正则表达式方法
    -- test():用于检测一个字符串是否匹配某个模式,如果匹配返回 true,否则返回 false。
    -- exec():用于检索字符串中的正则表达式的匹配。返回一个数组,其中存放匹配的结果。如果未找到,返回值null。

对象

var student = {
    name:"张三",
    age:29,
    sayHello:function(){
        //this.方法的调用者
        console.info(this.name)
    }
}

这里涉及多种创建对象方式,以及原型和原型链的问题,比较复杂,等总结完再发

继承

ES6中新加入的extends,可通过其创建一个普通类或者内建对象的子类

class User1 extends Person123{

}

模板字符串

用`(反引号)标识,用${}将变量括起来。所有的空格和缩进都会被保存。
在模版字符串中使用反引号需要加上转义字符“\”

var name = "张三";
var age = 20;
var introduce = `
    my name is ${name}, my age is ${age}
`;

导入库

可通过import和from导入库
语法:import {模块名称} from "需要导入模块的路径名"

import {sum} from "lib/math.js"
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容