D28_ JS102 + 作業解題


Posted by Christy on 2021-05-16

LIOJ 1021 好多星星

var readline = require('readline');

var lines = []
var rl = readline.createInterface({
  input: process.stdin
});

rl.on('line', function (line) {
  lines.push(line)
});

rl.on('close', function() {
  solve(lines)
})

function solve(lines) {
    let n = Number(lines[0])
    let result = ''
    for(let i=0; i<n; i++) {
        result += '*'
        console.log(result)
    }
}

JS102

module: 模組、模塊
TDD: Test-driven Development 測試驅動開發(先寫測試再寫程式)
ECMAScript, ES6 = ES2015

  • ES6 語法:let and const

    • constant 常數:不會變的
    • 作用域:scope 變數的生存範圍
    • let, const 的生存範圍只在大括號(一個 block )裡面
    • var 的生存範圍在 js 是以函式作為生存範圍
    • 盡量用 let,作用域越小越好,才不會干擾到其他東西
    • Template Literals: 解決多行字串跟拼接語法的問題
    • 解構 Destructuring,ES6 新語法

      const arr = [1, 2, 3, 4]
      
      var [first, second] = arr//取什麼名字都可以,會照順序拿到值
      
      console.log(first, second)//會印出 1 2
      
      const obj = {
      name: 'nick',
      age: 30,
      address: 'taiwan'
      }
      
      var {name, age, address} = obj
      
      console.log(address)//就會印出 taiwan
      
    • Spread Operator 展開運算值:

      var arr = [1, 2, 3]
      var arr2 = [4, 5, 6, arr]
      console.log(arr2)//這樣會印出 [4, 5, 6, [1, 2, 3]]
      
      var arr = [1, 2, 3]
      var arr2 = [4, 5, 6, ...arr]
      console.log(arr2)//這樣會印出 [4, 5, 6, 1, 2, 3]
      
      //也可以這樣用
      var arr2 = [4, ...arr, 5, 6]
      //這樣會印出 [4, 1, 2, 3, 5, 6]
      
    • Rest Parameters

      var arr = [1, 2, 3, 4]
      var [first, ...rest] = arr//rest 只能放最後面
      
      console.log(rest)//會印出[2, 3, 4]
      
  • Babel 語法轉換器: ES6/7/8 => Babel => ES5

  • es6-cheatsheet

LIOJ 1020 判斷質數

  • 寫了基本架構,但是在寫判斷質數的函式時,還是被卡住了,明天希望睡醒以後可以解的出來。









Related Posts

w17 hw2 餐廳網頁改寫

w17 hw2 餐廳網頁改寫

6. 排序 (上篇)

6. 排序 (上篇)

【CSS】- Box Modal(盒模型)

【CSS】- Box Modal(盒模型)


Comments