JavaScript入门 模板字符串/严格模式/Ascll码/Math/进制转换 Day08

模板字符串


模板语法   `${变量}`     ;    `${简单运算}` 

var message = 'world'
var str = `helllo: ${message}`
console.log(str)   //hello:world 

作用:

  • 字符串拼接更加方便
function test(){
    var a = 10
    var b = 20
    var c = `${a}+${b}=${c}`
    console.log(c)  // 10 + 20 = 30
}
test()
  • 换行不用连接符
    function test(){
        var str = `<div>`
                    <h2>标题</h2>
                    <p>拼接字符串,换行不用连接符</p>
                    </div>
                document.write(str)
    }
    test()

练习: 用JS实现表格

<style>
			table {
				width: 1200px;
				margin: 50px auto;
			}
			table tr {
				text-align: center;
				line-height: 40px;
			}
			table th,
			tr,
			td {
				border-bottom: 1px dotted gray;
			}
		</style>
	</head>
	<body>
		<script>
			var students = [
				{ number: 1001, name: 'jack', score: 98, gender: '男' },
				{ number: 1002, name: 'rose', score: 95, gender: '女' },
				{ number: 1003, name: '小丽', score: 85, gender: '女' },
				{ number: 1004, name: 'tom', score: 88, gender: '男' },
			]
			
            var trStr = ''
			students.forEach(function (item, index) {
				 trStr = trStr +  `<tr>
                                        <td>${item.number}</td>
                                        <td>${item.name}</td>
                                        <td>${item.score}</td>
                                        <td>${item.gender}</td>
                                    </tr>`
                
			})

			var str = '<table>' + trStr + '</table>'

			document.write(str)

 严格模式


不严格体现:

  • 变量不声明也能使用
  • 函数形参可以重复(后者覆盖前者)

开启严格模式:

'use strict' 

ASCII码 


ascll码

只支持拉丁文,包含英文,中文会乱码 

GBK :

 中文简体编码

Unicode编码

charCodeAt()方法 

用cgarCodeAt()方法判断编码的字符串长度

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)
/*
编写一个方法,求一个字符串的字节长度。 一个英文字符占用一个字节,一个中文字符占用两个字节
提示:中文字符unicode编码大于255
    字符unicode编码
     str.charCodeAt(0)
如 'jt编程实现学生表格显示'
     分析:
         初始化统计字节个数变量 count=0
         循环遍历字符串
         判断当前字符unicode编码是否大于255
             如果大于 count += 2 
             如果小于 count += 1  

*/

		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()

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. 方法 

Math 数学对象 


1. 处理数学问题

2. 创建方式

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

Math.方法()

3. 方法

  • random 随机数
     /*
       返回m到n之间的随机数
         m~n     Math.floor(Math.random()*(n-m) + m)  
    */
            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)
  • /*
                生成10000个0~10随机数,统计每个随机数出现次数
                   分析: 
                    1. 0~10随机数
                        Math.random()   0~1
                       Math.random() * 10
                    2. 循环10000次
                    3. 统计每个随机数出现次数
                        {
                            5:109,
                            3:789,
                            6:187
                            ...
                        }                 
    */
    			var obj = {} //记录随机数出现次数, 名称:随机数  值: 次数
    			for (var i = 0; i < 10000; i++) {
    				var r = Math.floor(Math.random() * 10) // [0,10)
    				if (obj[r]) {
    					obj[r]++
    				} else {
    					obj[r] = 1
    				}
    			}
    			console.log(obj)
    ceil 向上取整
  • floor 向下取整
  • round 四舍五入
  • abs max min ...

实例对象 和 类对象

var obj = new Object()

obj = {}

obj 实例对象

Math 类对象

进制转换


 1. 十进制转其它进制:
 

toString(进制)

var num = 100
  • -> 转二进制: num.toString(2) ->

2. 其它进制转十进制

  • parseInt(100,2) -> 十进制数
  • parseInt(100,8) -> 十进制数
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值