2.JavaScript的一些基本语法

一些应该掌握的知识点

  • 五种基本值类型:Number,String,Boolean,null,undefined;复杂数据类型:Object

  • 原始值是不可改变的,是栈数据(栈,先进后出,后进先出)

  • 值类型,把值传递给另一个变量(赋值),相当于分配了一块新的内存空间

  • String类型的特殊性:因为字符串大小可变,所以不能被存储在具有固定大小的变量中。且JS只复制对字符串的引用,而不是字符串的内容。但字符串不可变,因此String是行为与基本类型相似的不可变引用类型。(注:原始值是不可变的,任何方法都不能改变原始值内容,像String的方法,只能返回新的字符串,而不能修改原始字符串)

  • 引用类型,相当于让指针指向另一变量,拥有同一块内存空间,eg.Object,Array,Function

  • 引用值是堆数据(堆,先进先出,后进后出)

  • 关于undefined,null,NaN

    • 未定义的值和定义未赋值的为undefined
    • null是一种特殊的object
    • NaN是一种特殊的number
    • 关于null与undefined区别的一篇博客参考:JS中Null与Undefined的区别
  • JS语句的两个基本规则

    • 语句后面要用分号’;’结束
    • JS语法错误会引发后续代码终止,但不会影响其他JS代码块
  • 用一个变量去操作一个数字的时候,最多只能操作小数点前16位,和小数点后17位

  • 加号’+’可以进行数学运算和字符串连接,任何数据类型加字符串都等于字符串

  • 右加加(减减):先参与运算,操作符本身再+1;左加加(减减):操作符先自+1,再参与运算

  • 会被认定为false的值:undefined, null, NaN, ”, false

  • 逻辑与’&&’还有一个功能,假设a = b && c, 假设b的值为真,则直接把c的值赋给a

  • for (1;2;3){},执行1, 判断2,真则执行{},再执行3,判断2

  • 所键盘上有字符都是一个字节;若当前字符位的unicode大于255,那么该字节符长度为2,否则该字节符长度为1

  • 一些简单的代码示例:设定a,b两变量并分别赋值,再把a,b两值互相调换

    • 方法一

          var a = 123;//创建变量并赋值
          var b = 234;
          var c;
          c = a;//把a赋值给c
          a = b;
          b = c;
    • 方法二

          var a = 123;
          var b = 234;
          var c;
          a = a + b;//把a+b的值赋给a
          b = a - b;
          a = a - b;
  • “==”与”===”的区别

    • ”==”称作相等运算符,用它检测两个操作数是否相等,允许进行类型转换
    • “===”称为严格相等运算符,用它检测两个操作数是否严格相等
  • 一个if条件语句示例

var num = parseInt(window.prompt());
if (num >= 90) { //圆括号'()'内设定条件,如成立则执行大括号'{}'语句
    document.write('<b><i>日薪百万</i></b>');//window窗口显示相关内容,并对文本内容加粗加斜
}else if (num < 90 && num >= 80) {//if语句条件不成立,则执行else if语句
    document.write('<b><i>周薪百万</i></b>');
}else if (num >= 70) {
    document.write('<b><i>月薪百万</i></b>');
}else if (num >= 60) {
    document.write('<b><i>年薪百万</i></b>');
}else {//若其他条件皆不成立,则执行该语句
    document.write('<b><i>你就是个菜逼</i></b>');   
}
  • 一个switch条件语句示例
var n = window.prompt('选择逃课的时长,请输入数字1~7');
switch (n) { //设置表达式,并判断与下列case语句中哪一个case匹配
    case '1':
        document.write('一节课');
        break; //执行完本条case语句后停止执行下一个case
    case '2':
        document.write('半天');
        break;
    case '3':
        document.write('一天');
        break;
    case '4':
        document.write('一周');
        break;
    case '5':
        document.write('一个月');
        break;
    case '6':
        document.write('一学期');
        continue; //停止执行该条语句并执行下一个case
    case '7':
        document.write('一学年');
        break; 
    default: //当所有的case都不匹配时默认执行该语句
        document.write('你还是退学吧')    
};
  • 一个for循环语句示例
 var count = 0;
   var times = 0;
   for (var i = 0; i<100;) { /*在圆括号"()"中创建变量i并赋予初值0,然后判断是否满足条件i<100,
                              如满足则开始执行大括号"{}"中的语句,执行完成后再次判断是否满足
                              条件i<100 */
       count += i++; //完成一次count=count+i后,i再自加一
       times++;
       if (count >= 300) {
           i = 100;
           document.write(times);
           document.write('<br>')        
           document.write(count)
       }
}
  • do…while语句用法(注:do…wihile语句是循环语句的变体)
do {}while () {} /*在检查while()条件是否为真之前,该循环首先会执行一次do{}之内的语句,然后
                   在while()内检查条件是否为真,如果条件为真的话,就会重复do...while
                   这个循环,直至while()为假 */





一些练习

  • 计算2的N次幂
var n = parseInt(window.prompt('计算2的N次幂,请输入N的值')); /* 声明一个变量n,在window
                                                               窗口的弹窗中输入一个整型,
                                                               并赋值给n */
var m = 1;
var i;
if (n >= 0) {
    for (i = 0; i < n; i++) {
        m = m * 2;
    }
}else {
    for (i = 0; i > n; i--) {
        m = m * (-2);
    }
}
document.write('2的',n,'次幂为',m,'<br>');//window窗口中输出语句"2的n次幂为m"并折行
  • 计算N阶乘
var n = parseInt(window.prompt('计算N的阶乘,请输入N的值'));
var m = n;
if (n > 0) {
    for (i = 1; i < m; i++) {
        n = n * (m - i);
    }
    document.write(m,'的阶乘为',n,'<br>');
}else {
    document.write('不能输入小于或等于0的数','<br>');
}
  • 计算斐波那契数列的第N项
var n = parseInt(window.prompt('你需要斐波那契数列的第几项?,请输入N值'));
var m = 1;
var a = 1, b = 1;
if (n > 0) {
    for (var i = 1; i < n - 1; i++) {
        var m = a + b;
        a = b;
        b = m;
    }
    document.write('斐波那契数列的第',n,'项为',m,'<br>');
}else {
    document.write('不能输入小于或等于0的数','<br>');
}
  • 输入一个三位数,对输入值反向输出
var n = parseInt(window.prompt('请输入一个个位数不为零的三位正整数'))
var c;
var a = n % 10;
var b = (n - a) % 100;
c = (n - a - b) / 100;
if (n > 100 && a != 0) {
    var m = a * 100 + b + c;
    document.write('数值',n,'的反向输出为',m,'<br>');
}else {
    document.write('出错','<br>')
}
  • 输入三个数,并输出其中的最大值
alert('a,b,c三数比较大小')
var a = parseFloat(window.prompt('a,b,c三数比较大小,请输入a的值'));
var b = parseFloat(window.prompt('a,b,c三数比较大小,请输入b的值'));
var c = parseFloat(window.prompt('a,b,c三数比较大小,请输入c的值'));
var n = a;
if (a < b && b > c) {
    n = b;
}else if (a < c) {
    n = c;
}
document.write('a,b,c中的最大值为',n,'<br>');
  • 给定任意正整数N,取0到正整数N之间的质数
var n = parseInt(window.prompt('取零到正整数N之间的质数'));
document.write('0到',n,'之间的质数为');
for (var i = 1; i <= n; i++) {
    var m = 0;
    for (var a = 1; a <= i; a++) {
        if (i % a == 0) {
            m++;
        }
    }
    if(m == 2) {
        document.write(i + ' ');
    }
}
document.write('<br>');
  • 用”typeof”判断一些值类型
n = window.prompt('别乱按,我看着你呢!')
switch (n) {
    case '1': alert(typeof(a));break;
    case '2': alert(typeof(undefined));break;
    case '3': alert(typeof(NaN));break;
    case '4': alert(typeof(null));break;
    case '5': var a = '123abc';alert(typeof(+a));break;
    case '6': alert(typeof(!!a));break;
    case '7': alert(typeof(a + ''));break;
    case '8': alert(1 == '1');break;
    case '9': alert(NaN == NaN);break;
    case '10': alert(parseInt('123abc'));break;
    case '11': var num = 123123.3545789; alert(num.toFixed(3));break;
    default: alert('你再瞎按试试?瞧我不弄死你!');
};
好的,这是一个关于JavaScript制作网站的基本要求。 1. JavaScript基本语法的使用 JavaScript是一种脚本语言,用于在网页中添加交互性和动态效果。学习JavaScript基本语法是必不可少的,包括变量、数据类型、运算符、条件语句、循环语句等等。 2. 数组的基本使用 数组是JavaScript中最常用的数据结构之一,可以用来存储一组相关的数据。学习数组的基本使用包括如何创建、添加、删除和遍历数组。 3. 对象的基本使用 对象是JavaScript中另一个重要的数据结构,它可以用来存储复杂的数据类型。学习对象的基本使用包括如何创建、添加、删除和遍历对象的属性。 4. 对象的基本使用 对象是JavaScript中另一个重要的数据结构,它可以用来存储复杂的数据类型。学习对象的基本使用包括如何创建、添加、删除和遍历对象的属性。 5. DOM的基本使用 DOM(文档对象模型)是指网页的编程接口,它允许JavaScript代码与网页中的元素进行交互。学习DOM的基本使用包括如何获取和修改网页元素的内容、样式和属性。 6. BOM的基本使用 BOM(浏览器对象模型)是指浏览器的编程接口,它允许JavaScript代码与浏览器窗口进行交互。学习BOM的基本使用包括如何获取和修改浏览器窗口的大小、位置和URL等属性。 7. 正则表达式的基本使用 正则表达式是一种用于匹配字符串的模式,可以用来验证用户输入的数据或者从字符串中提取特定的信息。学习正则表达式的基本使用包括如何创建正则表达式、匹配字符串和替换字符串等操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值