JavaScript编程语言的基本语法

  1. 编程语言JavaScript 标记语言 HTML 层叠样式表CSS核心技术来完成浏览器和访问人员的交互功能。Web前端的三大核心技术。
  2. JavaScript的组成包含三大部分,分别为ECMAScript、DOM和BOM。

ECMAScript: 定义了javascript的语法规范,描述了语言的基本语法和数据类型

        BOM (Browser Object Model): 浏览器对象模型
  - 有一套成熟的可以操作浏览器的 API,通过 BOM 可以操作浏览器。比如: 弹出框、浏览器跳转、获取分辨率等
DOM (Document Object Model): 文档对象模型
  - 有一套成熟的可以操作页面元素的 API,通过 DOM 可以操作页面中的元素。

JS 代码三种写法

--行内样式       行内填写不推荐,不符合分离开发原则

--内嵌样式<script >内部填写</script>

--外部样式<script src="文件名.js"></script>有利于分离开发


JS 中的注释

**单行注释

**多行注释

有利于理解代码可读性

调试台要理解会用,Chrome


基本数据类型

--基本数据类型: 字符串string、数值型number、布尔型boolean、空null(有值)、未定义undefined

--

        
        let name = ""
        let money = 0
        let age = "你妹" - 5//NaN
        // 是否
        let is = false
        let wife = null
        // 信仰
        var be;
        
        console.log(name, typeof (name));//"",string字符串类型
        console.log(money, typeof (money));//0 number数据类型
        console.log(age, typeof (age));//NaN number数据类型
        console.log(inJail, typeof (inJail));//false boolean布尔型
        console.log(wife, typeof (wife));//null object
        console.log(be, typeof (be));//undefined undefined

--

/* "" 0 NaN null undefined 这几个转布尔都是false 其余值转Boolean皆为TRUE */

        console.log(Boolean(""));

        console.log(Boolean(0));

        console.log(Boolean(NaN));

        console.log(Boolean(null));

        console.log(Boolean(undefined));

        /* 正常值转换布尔皆为true */

        console.log(Boolean("你妹"));

        console.log(Boolean(-1));

        console.log(Boolean({}));


for循环,do while 循环;break;continue


if;switch



 // 遍历键值----遍历对象

        for (var key in obj) {
            console.log(key, obj[key]);
        }

        // attribute属性 attr
        for (var attr in obj) {
            console.log(attr, obj[attr]);
        }

//数组可以用for i循环;i<arr.length;

        利用索引来查询遍历数组;
        for (var i = 0; i < arr.length; i++) {
            console.log(i, arr[i]);
        }


打印对象树

         //打印深层次对象
        function logObj(obj) {
        //遍历对象
            for (var key in obj) {
        //判断属性值是否是object类型
                var value = obj[key]
                if (typeof (value) !== "object") {
                    // 如果是叶子则直接打印
                    console.log(key, value);
                } else {
                    // 对子树进行递归打印
                    logObj(value)
                }
            }
        }
        // logObj(o)

第二种显示的对象树

        function logObj2(obj, depth = 0) {
            for (var key in obj) {
                var value = obj[key]

                if (typeof (value) !== "object") {
                    // 如果是叶子则直接打印
                    var str = "|-"
                    for (var i = 0; i < depth; i++) {
                        str += "|-"
                    }

                    // 带有层级深度的打印
                    console.log(str, key, value);
                } else {
                    // 对子树进行递归打印
                    logObj2(value, ++depth)
                }
            }
        }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

章鱼埃里克.T

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值