模板字符串

模板字符串

1. 模板字符串

            var str = 'hello'

            var str = "hello"

            var str = `hello`   模板字符串

                模板语法  `${变量}`

                          ${简单运算}

        2. 作用

            2.1字符串拼接

            2.2换行不用连接符

<script>
			function test1() {
				var message = 'world'
				var str = `hello: ${message}`
				console.log(str)
			}

            //2.1字符串拼接
            function test2(){
                var a = 10
                var b = 20
                var c = a + '+' + b + ' = '+ (a+b)
                console.log(c)
            }
            // test2()
            function test3(){
                var a = 10
                var b = 20
                var c = `${a}+${b}=${a+b}`
                console.log(c)
            }
            // test3()

            function test4(){
                var str = '<div>'+
                            '<h2>模板字符串</h2>'+
                            '<p>1.作用</p>'+
                           '</div>'
                document.write(str)
            }
            // test4()
            function test5(){
                var title = '模板字符串'
                var str = `<div>
                             <h2>${title}</h2>
                             <p>1.作用</p>
                             <p>拼接字符串,换行不用连接符</p>
                           </div>`
                document.write(str)
            }
            test5()
		</script>

严格模式

js的不严格体现

         1. 变量不声明也能使用

         2. 函数形能可以重复

        开启严格模式  'use strict'

<script>
        'use strict'  // 开启严格模式
        // var num  //定义变量
        num = 100 //使用变量 给变量赋值
        console.log('num ',num)

        function fun(m,m){
            console.log('m ',m, ' m ',m)
        }
        fun(100,200)

    </script>

字符串字节长度

编写一个方法,求一个字符串的字节长度。 一个英文字符占用一个字节,一个中文字符占用两个字节

            提示:中文字符unicode编码大于255

                 字符unicode编码

                     str.charCodeAt(0)

            如 'jt编程实现学生表格显示'

              分析:

                  初始化统计字节个数变量 count=0

                  循环遍历字符串

                     判断当前字符unicode编码是否大于255

                         如果大于 count += 2

                         如果小于 count += 1  

var str = 'javascript编程实现学生表格显示'
			var count = 0 // 统计字节个数
			for (var i = 0; i < str.length; i++) {
                if(str.charCodeAt(i) > 255){
                    count += 2
                }else{
                    count += 1
                }
            }
            document.write('字符串中字节个数是 '+count)

统计字符个数

 1.统计字符串中不同字符的出现次数?

               'abcdefabcadefkmmkggcc'

            分析:

              Object

               {

                    a: 3    

                    b: 2

                    c: 4

                    d: 2

                    ...

                }

            计数器:

               count = 0

               count++

               

             统计分数段人数  90-99  3人   80-89 2人

                var num = [11]

                num[10]  100

                num[9]  90-99

                 ...

           

            1. 定义一个空对象存储字符出现次数,属性名是字符,属性值对应字符出现次数 {a:2,b:3...}

            2. var obj = {}

               obj.a = 1    {a:1}

               obj.b = 1

            3. 循环遍字符串

                   判断obj对象中是否已经有该字符

                      如果有值加一

                      如没有,作为新属性添加,值赋值为1

function getCountString() {
				var str = 'abcdefabcadefkmmkggcc'
				var obj = {} //存储各个字符出现次数
				// 循环遍历字符串
				for (var i = 0; i < str.length; i++) {
					var chars = str.charAt(i) // a
					// 判断obj对象中是否已经有该字符
					// 当对象属性是变量时,通过中括号访问
					if (obj[chars]) {
						obj[chars]++
					} else {
						obj[chars] = 1
					}
				}
                // 遍历对象for-in
                for(var key in obj){
                    console.log('key: ',key +  '  value : ',obj[key])
                }
			}
            getCountString()

			function test() {
				var obj = {
					name: 'jack',
					age: 18,
					//a:1
				}
				//判断对象obj中是否有属性 a
				console.log('obj.a ', obj.a)
				// if语句条件表达式值为undefined、null、''、0 自动转为布尔值 false
				if (obj.a) {
					console.log('存在a')
				} else {
					console.log('不存在a')
				}
			}
			// test()

数学对象Math

Math 数学对象

           1. 处理数学问题

           2. 创建方式

                不需要使用构造函数创建,它比较特殊直接使用就可以,像这样的对象称为类对象

                Math.方法()

           3. 方法

               random 随机数

               ceil  向上取整

               floor 向下取整

               round 四舍五入

                abs

                max

                min

                ...

        实例对象 和 类对象

          var obj = new Object()

              obj = {}

             obj 实例对象

             

          Math 类对象

javascript内置对象

            1. 对象做什么的,有什么功能?

                Object对象

                    存储名称值对的集合

               

                Array数组

                    存储一系列有序数据的集合

                String 字符串对象

            2. 创建方式

                    var obj = new Object()

                    var obj = {name:'jack',age:18}

                    obj.name = 'jack'  

                   

                   

                    var arr = new Array()

                    var arr = [10,20,30]

                    arr.length

                   

            3. 属性

                  length

            4. 方法

实例 m到n之间的随机数

 0~10    Math.floor(Math.random()*10)  

        10~20   Math.floor(Math.random()*10 + 10)  

        20~30   Math.floor(Math.random()*10 + 20)  

        30~50   Math.floor(Math.random()*20 + 30)

        50~80   Math.floor(Math.random()*30 + 50)  

           ....

        m~n     Math.floor(Math.random()*(n-m) + m)

/*
          返回m到n之间的随机数
        */
        function getRandom(x,y){    
            var n = Math.max(x,y)
            var m = Math.min(x,y)
            return Math.floor(Math.random()*(n-m) + m)
        }

        var r = getRandom(40,15)
        document.write(r)
<script>
        function test1(){
            var r = Math.random() // 0 ~ 1 (包含0不包含1)
            document.write(r)
        }

        function test2(){
            var num = 10.4
            // var num1 = Math.ceil(num)
            // var num1 = Math.floor(num)
            var num1 = Math.round(num)
            document.write(num1)
        }
        // test2()
        function test3(){
            var num = -9
            var num1 = Math.abs(num)
            document.write(num1)
        }
        // test3()
        function test4(){
            // var m = Math.max(34,56,78,65,98)
            var m = Math.min(34,56,78,65,98)
            document.write(m)
        }
        test4()

    </script>

进制转换

进制与进制转换

            进制

               计数的一种方式, 现实生活中一般十进制计数

            十进制  0 ~ 9    

                      + 1  

                        10

                    满十进一

            二进制   0 ~ 1      计算机使用二进制

                    满二进一

                       10    11    100

                           +  1

                           -----

                             100  

                       2     3      4

            八进制    0 ~ 7  

                     满八进一

                     10   11  

                     8    9

                    计算机区分

                    010

            十六进制   0~9 A B C D E F

                    满十六进一

                      0x10  

                 

         进制转换

           1. 十进制转其它进制

             toString(进制)

            var num = 100

            -> 转二进制

            num.toString(2)  ->

   

            2. 其它进制转十进制

                parseInt(100,2) ->  十进制数

                parseInt(100,8) ->  十进制数

<script>
        function test1(){
            var num = 010   // 编程时八进制前加0
            var num1 = 0x11
            console.log(num, num1)
        }

        function test2(){
            var num = 27
            console.log('二进制 :', num.toString(2) )
            console.log('八进制 :', num.toString(8) )
            console.log('十六进制 :', num.toString(16) )
        }
        // test2()
        function test3(){
            var num = 100
            console.log( parseInt(num, 2) )
            console.log( parseInt(num, 8) )
            console.log( parseInt(num, 16) )
        }
        test3()


    </script>

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值